Description |
The AnsiPos function looks for a substring Needle in a string HayStack, returning the position in the string of the first occurence.
All Ansi commands support multi-byte and accented characters.
If the string is not found, 0 is returned.
The search is case sensitive.
|
|
Notes |
Note that strings start at position 1.
Multi-byte character sets are operating system defined. For example, Oriental versions of Windows uses multi-byte characters to support thier very large set of primitives ('letters').
|
|
Related commands |
AnsiIndexStr |
|
Compares a string with a list of strings - returns match index |
AnsiMatchStr |
|
Returns true if a string exactly matches one of a list of strings |
LastDelimiter |
|
Find the last position of selected characters in a string |
StrScan |
|
Searches for a specific character in a constant string |
|
|
|
Example code : Find a word in a sentence |
var
position : Integer;
begin // Look for the word 'Cat' in a sentence // Note : that this search is case sensitive, so that // the first 'cat' is not matched
position := AnsiPos('Cat', 'The cat sat on the Cat mat');
if position = 0
then WriteLn('''Cat'' not found in the sentence')
else WriteLn('''Cat'' was found at character '+IntToStr(position));
end;
|
Show full unit code |
'Cat' was found at character 20
|
|