Хелпикс

Главная

Контакты

Случайная статья





Процедуры и функции для обработки стрингов.



3. Процедуры и функции для обработки стрингов.

Строковые функции:

§ Функция Concat(S1, S2, …, SN) выполняет склеивание (конкатенацию) строк S1, S2, …, SN в одну строку. Пример:    

Выражение Результат
Concat('Маша ', 'ела ', 'кашу') 'Маша ела кашу'

§ Функция Length(S)— определяет текущую длину строки S. Результат — значение целого типа.  Пример: 

Значение S Выражение Результат
'test-5' Length(S)
'(A+B)*C' Length(S)

§ Функция Copy(S, Pozition, N) выделяет из строки S подстроку длиной N символов, начиная с позиции Pozition. Здесь N и Pozition — целочисленные выражения. Пример:

Значение S Выражение Результат
‘Мама мыла раму’ Copy(S, 6, 4) ‘мыла’
‘Маша ела кашу’ Copy(S, 1, 8) ‘Маша ела’

§ Функция Pos(S1, S2) — обнаруживает первое появление в строке S2 подстроки S1. Результат — целое число, равное номеру позиции, где находится первый символ подстроки S1. Если в S2 подстроки S1 не обнаружено, то результат равен 0. Пример:

Значение S2 Выражение Результат
'abcdef' Pos('cd', S2)
'abcdcdef' Pos('cd', S2)
'abcdef' Pos('k', S2)

Строковые процеруры:

§ Процедура Delete(S, Poz, N) — удаление N символов из строки S, начиная с позиции Poz. В результате выполнения процедуры уменьшается текущая длина строки в переменной S. Пример:

Исходное значение S Оператор Конечное значение S
'abcdefg' Delete(S, 3, 2) 'abefg'
'abcdefg' Delete(S, 2, 6) 'a'

§ Процедура Insert(S1, S2, Poz) — вставка строки S1 в строку S2, начиная с позиции Poz. Пример:

Исходное значение S2 Оператор Конечное значение S2
'ЭВМ РС' Insert('IBM-', S2, 5) 'ЭВМ IBM-PC'
'Рис. 2' Insert('N', S2, 6) 'Рис. N 2'

 

 

§ Процедура Str(X, S) –преобразует числовое значение X в последовательность символов. Пример:

Исходное значение X Оператор Конечное значение S
Str (1234,S) S=’1234’
4.52e+3 Str (4.52e+3,S) S=’4.52e+3’

§ Процедура Val (S, X, K) – преобразует строку S в его числовое представление. Если строка действительно является записью числа, то значение K=0, а в противном случае – K=номеру первого символа. Пример:

Исходное значение S Оператор Конечное значение X Значение K
‘10890’ Val ('10890’, X, K)
‘12d4’ Val (‘12d4’, X,K)  

 

4. Пример.Сколько раз в данной строке встречается символ пробел?

Program upr;

var S: string; i, k: integer;

begin

writeln (‘введите строку’); readln (S);

k : =0;

for I : =1 to length (S) do If S[i] = ‘ ‘ then k : = k + 1;

writeln (‘k=’, k);

readln

end.

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.