POSUPPER()
Left-most position of an uppercase letter in a string
Syntax
POSUPPER( <cString>, [<lMode>], [<nIgnore>] ) -> nPosition
Arguments
<cString> Designates the string that is searched.
<lMode> Designates how the function searches for the first upper case, alphabetic character. The default value (.F.) searches for the first alphabetic character that would be changed by the Harbour function LOWER().
<nIgnore> Designates the number of characters at the beginning of the character string that are excluded from the search. The default value excludes none (0).
Returns
The value returned corresponds to the position of the character located. When no matching character is found, the function returns 0.
Description
Starting from the beginning of the string, POSUPPER() searches for the first upper case, alphabetic character in the <cString> that corresponds to the first character that would be changed by the Harbour LOWER() function. If <lMode> is .T., the function searches for the first non- alphabetic character that would not be changed by LOWER(). The <nIgnore> parameter can exclude a specific number of characters at the beginning of <cString>.
Notes
. Characters located when the <lMode> parameter is .T. are not necessarily lower case, alphabetic characters. . The function works in conjunction with the NATION module because different languages use different characters to represent their alphabets.
Example
cString := "123abcUABC" ? POSUPPER(cString) // Result: 7 ? POSUPPER(cString, .T.) // Result: 1 ? POSUPPER(cString, .F., 7) // Result: 8
Compliance
POSUPPER() is compatible with CT3’s POSUPPER().
Platforms
All
Files
Source is pos1.c, library is libct.
Seealso
POSALPHA(), POSLOWER(), POSRANGE()