пятница, 12 октября 2012 г.

Операции со строками в Delphi


Библиотека языка программирования Delphi включает несколько достаточно полезных процедур и функций, чтобы работать со строками. Подробнее остановимся на каждой из них и приведем их примеры.
1) Функция length  
возвращает длину указанной строки. Данная функция обладает одним параметром, который представляет собой выражение, имеющее строковый тип данных. В качестве значения функции length выступает целое число, обозначающее количество символов, входящих в состав строки.  
Примеры 
a:=length('stroka');   
b:=length('na beregu'); 
В результате выполнения этих инструкций переменная a пример значение 6, а переменная b получит значение 9.
2) Процедура delete  
С помощью процедуры delete можно удалить определенную часть строки. Общий вид процедуры delete выглядит следующим образом:
delete(строка, n, m) ; 
откуда:
  • строка обозначает переменную или константу с строковым типом данных;  
  • n есть номер символа, начиная с которого удаляется заданная подстрока;  
  • m представляет собой длину удаляемой впоследствии подстроки. 
Пример

При выполнении инструкции  
st:= 'Город Екатеринбург';   
delete(st,7,12); 
переменная st примет значение-строку 'Город'.
3) Функция роs  
С помощью функции pos возможно определение положения подстроки в указанной строке. Общий вид инструкции функции pos представляется так:
pos(подстрока,строка) ;  
откуда подстрока представляется собой переменную или константу строкового типа, которую необходимо отыскать в строковой переменной или константе строка. 
Пример

При выполнении следующей инструкции: 
n:=pos('ка','Екатеринбург'); 
Переменная n примет значение 2. В случае, если строка не содержит искомую подстроку, то функция pos возвращает значение 0. 
Приведем пример инструкции оператора while, которая позволит удалить начальные пробелы из указанной строки: 
while(pos(' ',s)=1) and (length(s) > 0) do delete (st,1,1);  
Здесь процедура delete (s, 1, 1) удаляет пробелы до тех пор, пока пробел есть начальный символ строки (то есть пока значение функции pos(' ',s) совпадает с единицей). Проверка условия length(s) > 0 применяется здесь для того, чтобы учесть возможность включения в строку только одних пробелов.
4) Функция copy
Функция copy выделяет фрагмент указанной строки. Общий вид инструкции функции copy представляется следующим образом: 
сору(строка,n, m);  
откуда 
  • строка обозначает строковое выражение, включающее строку, фрагмент которой необходимо получить;   
  • n обозначает номер первого символа, начиная с которого выделяется подстрока; 
  • m обозначает длину выделяемой подстроки.   
Пример 
При выполнении инструкции 
s:= 'Город Екатеринбург';   
town:=copy(s, 7, 12) ;   
переменная  town примет значение-строку 'Екатеринбург'.

Комментариев нет:

Отправить комментарий