인덱스로 문자에 액세스할 수 있으므로 변수 루프를 사용하여 가능한 인덱스 값을 사용하는 모든 문자를 반복할 수 있습니다. 예를 들어 문자열 s의 모든 문자 코드를 표시하는 프로그램은 다음과 같습니다.
<예비>
for i := 1 to length(s) do
writeln(s[i], ord(s[i]))
프로그램에 대한 설명:
1) length(s)
함수는 문자열의 길이를 찾습니다. 첫 번째 문자의 인덱스는 1이고 마지막 문자의 인덱스는 length(s)입니다. 루프 변수 i는 1에서 길이까지의 값을 취합니다.
2) 각 줄에서 기호 자체가 먼저 표시되고 내장 함수 ord()
에 의해 반환되는 코드가 표시됩니다.
동일한 열거형을 더 짧게 작성할 수 있습니다.
<예비>
for c in s do
writeln(c, ord(c));
이 조각에서 루프 헤더는 모든 문자 s를 반복하여 변수 c에 차례로 배치합니다.
문자열로 작업할 때 파스칼의 특징은 문자열이 변경 가능한 개체라는 것입니다. 즉, 문자열의 개별 문자를 변경할 수 있습니다.
예를 들어 다음 문이 작동합니다.
<예비>
s[5] := 'a';;
필요한 변경 사항이 있는 문자에서 새 문자열을 작성할 수도 있습니다.
예를 들어, 모든 문자 'a'를 교체하는 프로그램은 문자 'b' 다음과 같이 표시됩니다.
<예비>
읽기(들);
for i := 1 ~ 길이 시작
if s[i] = 'a'then s[i] := 'b';;
끝;
writeln(s);
이 예제에서는 문자열 s의 모든 문자를 반복합니다. 루프 본문에서 변수 s[i]의 값을 확인합니다. 문자가 'a' 문자와 일치하면 'b'로 바꿉니다.