Pascal에서는 문자열의 일부(하위 문자열)를 선택할 수 있습니다. 이를 위해 복사 작업이 사용됩니다.
작업의 일반적인 형식은 다음과 같습니다. <예비> s1 := 복사(들, 인덱스, 카운트); 이 명령은 문자열 s에서 길이 계수 인덱스 인덱스의 문자에서 시작하는 슬라이스를 가져옵니다.
예를 들어, <예비> s1 := 복사(s, 3, 5); index가 문자열의 길이보다 크면 빈 문자열이 반환됩니다. index에서 시작하는 count 문자가 문자열의 길이보다 길면 index에서 시작하여 끝나는 문자열 s가 반환됩니다.

문자열을 뒤집는 것이 얼마나 쉬운지는 다음과 같습니다. <예비> s := '0123456789';; s1 := reverseString(s); // s1 = '0123'

문자열의 일부를 삭제하려면 delete(s, firstIndex, count) 메서드를 사용해야 합니다. 이 메서드는 부터 시작하여 문자열 s에서 count 문자를 제거합니다. 첫 번째 인덱스 <예비> s := '0123456789';; 삭제(들, 4, 6); // s1="0129"

문자열의 일부를 복사하려면 copy(s, index, count) 메서드를 사용할 수 있습니다. 이 메서드는 인덱스 indexs의 일부를 반환합니다. strong> 및 길이 개수
 

<예비> 에스 := '123456789' s1 := 복사(s, 3, 4); // s1 = '3456'

Pascal에는 문자열 작업을 위한 많은 루틴이 있습니다.  대부분은 점 표기법을 사용하여 호출되며 메서드라고 합니다. 문자열 조작 방법의 전체 목록은 온라인에서 찾을 수 있습니다. 
그들 중 일부에 대해 알아 봅시다. <예비> s := 'aAbBcC' sUp := 대문자; // sUp = "AABBCC"; - 문자열의 각 문자를 대문자로 변환하는 메소드 sLow := 소문자 // sLow = "aabbcc"; - 문자열의 각 문자를 소문자로 변환하는 메서드 메서드는 항상 괄호로 작성됩니다. 필요한 경우 괄호 안에 몇 가지 매개 변수가 있습니다.

또 다른 유용한 방법  - val(s, v, ind) - 문자열의 모든 문자가 숫자인지 확인하는 방법. s - 소스 문자열, v는 소스 문자열이 숫자인 경우 숫자를 포함하고 그렇지 않은 경우 0을 포함합니다. ind는 첫 번째 < strong> index s는 숫자가 아니며, s 가 숫자이면 0입니다. <예비> 에스 := 'ab1c' val(s, v, ind); writeln(v, ' ', ind); // 0 3 에스 := '123'; val(s, v, ind); w(vriteln, ' ', ind); // 123 0 유용한 trim(s) - 방법을 사용하면 문자열의 시작과 끝에서 공백을 제거할 수 있습니다. <예비> 에스 := ' ab 1c '; print('s=', trim(s)); // s=ab 1c

파스칼에서 문자열 내에서 검색하려면 pos() 메서드를 사용하세요.
문자열에서 하위 문자열이 처음 나타나는 인덱스를 반환합니다.
pos(originalString, smallString) - originalString smallString

에서 찾습니다.

하위 문자열을 찾을 수 없으면 메서드는 0을 반환합니다.

<예비> 환영합니다 := '안녕하세요! 안녕 세상!'; index := pos(welcome, 'wor'); writeln(인덱스); // 7 index := pos(welcome, 'sun'); writeln(인덱스); // 0
참고: 이 방법은 발생 횟수를 찾지 않고 문자열에 그러한 하위 문자열이 있는지 여부만 결정합니다. .

Pascal에서 하나의 하위 문자열을 문자열의 다른 하위 문자열로 바꾸려면 stringReplace()
메서드를 사용하세요. stringReplace(original, old, new, flag): originalString  하위 문자열 old 는 다음에 교체됩니다. new플래그 는 rfReplaceAll 또는 rfIgnoreCase, 값 중 하나입니다. 대괄호 안에 적었습니다. 첫 번째 경우에는 모든 old 가 originalString으로, 두 번째 경우에는 첫 번째만 발생합니다.

파스칼 문자열 대체 예:
 

<예비> 전화 = '+1-234-567-89-10' // 하이픈은 공백으로 변경 edit_phone := stringreplace(전화, '-', ' ', [rfReplaceAll]); writeln(edited_phone); // +1 234 567 89 10 // 하이픈 제거 edit_phone := stringreplace(전화, '-', '', [rfReplaceAll]); writeln(edited_phone); // +12345678910 // 첫 번째 대시만 변경 edit_phone := replace(전화, '-', '', [rfIgnoreCase]); writeln(edited_phone); // +1234-567-89-10