Функция AnsiIndexStr в Delphi сравнивает строку со списком строк и возвращает соответствующий индекс.
StrUtils unit
function AnsiIndexStr (const Source : string; const StringList : array of string) : Integer;
Функция AnsiIndexStr выясняет, соответствует ли точно любая из строк StringList строке Source.
Когда соответствие найдено, возвращается индекс 1. Иначе, возвращается -1.
Список строк может быть определен как список взятый в квадратные скобки, как в примере, или как массив строк.
Эта команда чувствительна к регистру.
Функция AnsiIndexStr: Пример кода
var
source : AnsiString;
position : Integer;
begin
source := 'Henry'; // Строка для соответствия
// Обратите внимание, что AnsiIndexStr чувствительна к регистру
// Мы используем жестко установленный постоянный строковый массив
position := AnsiIndexStr(source, ['BRIAN', 'JIM', 'HENRY']);
ShowMessageFmt('Индекс первого соответствия = %d',[position]);
// Обратите внимание, что массивы начинаются с 0
position := AnsiIndexStr(source, ['Brian', 'Jim', 'Henry']);
ShowMessageFmt('Индекс второго соответствия = %d',[position]);
end;
Результат
Индекс первого соответствия = -1
Индекс второго соответствия = 2
Похожие функции, процедуры и команды
AnsiMatchStr — возвращается истина, если строка точно соответствует какой-либо строке из списка.
AnsiPos — находит позицию одной строки в другой.
StrScan — ищет заданные символы в строке.