RSS

Pos (функция)

Функция Pos – ищет в строке подстроку и возвращает номер символа с которого начинается вхождение подстроки в строке. Если вхождение не найдено функция возвращает 0. Функция входит в состав библиотеки System и имеет два входных параметра — текстовую строку, в которой ищем и что ищем.

 
Синтаксис функции:  Pos(Substr: string; S: string): Integer
где:
Substr – искомая подстрока, символ или набор символов;
S – строка в которой ищем Substr.
 
Например, найдем в строке «Ах, эта прекрасная зима!», номер вхождения «пре»:

procedure TForm1.Button1Click(Sender: TObject);
const str=‘Ах, эта прекрасная зима!’;
var sMsg:string;
begin

sMsg:=‘Сочетание «пре» в строке [‘+str+‘]’+#13+
      ‘начинается с ‘+IntToStr(pos(‘пре’,str))+‘ символа.’;

ShowMessage(sMsg);

end;

Внимание! Функция Pos чувствительна к регистру. Если при поиске нет необходимости учитывать регистр, тогда переведите  входные параметры Substr и S в один регистр функцией LowerCase или UpperCase.

 

Примечание: Функция Pos находит только первое вхождение подстроки в строке и начинает поиск всегда с первого символа. Как правило, этого достаточно для поиска некоторой информации, т.е. если есть совпадение, то выдаем результат. Но если встанет задача поиска в тексте всех вхождении или будет условие просмотра с определенного символа, то для этих целей подойдет расширенная функция PosEx.