Функция AnsiPos в Delphi находит позицию одной строки в другой.
StrUtils unit
function AnsiPos (const Needle, HayStack : string) : Integer;
Функция AnsiPos ищет подстроку Needle в строке HayStack, возвращая позицию в строке первого вхождения.
Все команды Ansi поддерживают многобайтовые символы и символы с диакритическими знаками.
Если строка не найдена, то возвращается 0.
Поиск чувствителен к регистру.
Примечание.
Обратите внимание, что строки начинаются с позиции равной 1.
Многобайтовые наборы символов, определенные операционной системой. Например, Восточные версии Windows используют многобайтовые символы для поддержания их очень большого набора символов.
Функция AnsiPos: Нахождение слова в предложении
var
position : Integer;
begin
// Поиск слова 'Cat' в предложении
// Обратите внимание: что этот поиск чувствителен к регистру, поэтому первое 'cat' не рассматривается
position := AnsiPos('Cat', 'The cat sat on the Cat mat');
if position = 0
then ShowMessage('''Cat'' не найдено в предложении')
else ShowMessage('''Cat'' было найдено начиная с символа '+IntToStr(position));
end;
Результат
'Cat' было найдено начиная с символа 20
Похожие функции, процедуры и команды
AnsiIndexStr — сравнивает строку со списком строк, возвращает соответствующий индекс.
AnsiMatchStr — возвращается истина, если строка точно соответствует какой-либо строке из списка.
LastDelimiter — находит последнюю позицию указанных символов в строке.
StrScan — ищет заданные символы в строке.
