Mega Code Archive

 
Categories / Delphi / Functions
 

Ansicomparetext - compare two strings for equality, ignoring case sysutils unit

function AnsiCompareText ( const String1, String2 : string ) : Integer; Description The AnsiCompareText function compares String1 and String2 for equality, ignoring case. This is the modern, Locale safe form of CompareStr. All Ansi commands support multi-byte and accented characters. It returns these values : String1 < String2 : -ve number String1 = String2 : 0 String1 > String2 : +ve number The comparison is not affected by length - it is carried out on a letter by letter basis. But a longer string is greater than a shorter, otherwise matching string. Notes In Delphi : Letters > Numbers Multi-byte character sets are operating system defined. For example, Oriental versions of Windows uses multi-byte characters to support their very large set of primitives ('letters'). Related commands AnsiCompareStr Compare two strings for equality Example code : Compare various strings begin // Compare two obviously different strings CompareStrings('HELLO', 'WORLD'); // Compare identical strings CompareStrings('Hi 2 you', 'Hi 2 you'); // AnsiCompareText treats upper and lower case identically CompareStrings('ABCdef', 'abcDEF'); // All letters follow numbers in Delphi CompareStrings('abc', '123'); end; // Compare two strings, and show which is bigger than the other procedure TForm1.CompareStrings(const string1, string2: string); var result : Integer; begin // Compare some strings result := AnsiCompareText(string1, string2); if result < 0 then ShowMessage(string1+' < '+string2); if result = 0 then ShowMessage(string1+' = '+string2); if result > 0 then ShowMessage(string1+' > '+string2); end; Show full unit code HELLO < WORLD Hi 2 you = Hi 2 you ABCdef = abcDEF abc > 123