Compares a string with a list of strings - returns match index StrUtils unit
 function AnsiIndexStr ( const Source : string; const StringList : array of string ) : Integer;
The AnsiIndexStr function checks to see if any of the strings in StringList exactly match the Source string.
When a match is found, its (0 based) index is returned. Otherwise, -1 is returned.
The string list can be specified as a square bracket delimited list, as in the example, or as an array of strings.
It is a Case sensitive command.
Related commands
AnsiMatchStr Returns true if a string exactly matches one of a list of strings
AnsiPos Find the position of one string in another
StrScan Searches for a specific character in a constant string
 Author links

 Buy Website Traffic at

 Buy Proxies at
 Download this web site as a Windows program.

Example code : A simple example
  source : AnsiString;
  position : Integer;
  source := 'Henry';   // The string to match

  // Note that AnsiIndexStr is case sensitive
  // We use a hard coded constant string array
  position := AnsiIndexStr(source, ['BRIAN', 'JIM', 'HENRY']);
  ShowMessageFmt('Index of first match attempt = %d',[position]);

  // Note that arrays start at 0
  position := AnsiIndexStr(source, ['Brian', 'Jim', 'Henry']);
  ShowMessageFmt('Index of second match attempt = %d',[position]);
Show full unit code
   Index of first match attempt = -1
   Index of second match attempt = 2
Delphi Programming Neil Moffatt 2002 - 2016. All rights reserved.  |  Home Page