SearchBuf function
Search a buffer for a certain string.
Declaration
function SearchBuf(Buf: PAnsiChar; BufLen: SizeInt; SelStart: SizeInt;
SelLength: SizeInt; SearchString: string;
Options: TStringSearchOptions): PAnsiCharArguments
Buf | Buffer to search. |
BufLen | Length of the buffer. |
SelStart | Start of selection. |
SelLength | Length of selection. |
SearchString | String to search for. |
Options |
Function result
Position of the string, nil if not found.
Description
SearchBuf searches the buffer
Buf for the occurrence of
SearchString.
At most
Buflen characters are searched, and the search is started at at
SelStart when searching (up, the default),
but starts at
SelStart+
SelLength when searching backward (the
soDown option is given).
If a match is found, a pointer to the position of the match is returned.
SelStart is a zero-based offset from
Buf and is the lower bound for search operations.
The parameter
Options specifies how the search is conducted. It is a set of the following options:
| Option | Effect |
|---|---|
| soDown | Searches backward, starting at the end of the selection. Default is searching up. |
| soMatchCase | Observe case when searching. Default is to ignore case. |
| soWholeWord | Match only whole words. Default also returns parts of words. |
The standard constant WordDelimiters is used to mark the boundaries of words.
The SelStart parameter is zero based.
Errors
Buflen must be the real length of the string, no checking on this is performed.
See also
An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
