Функція AnsiCompareStr в Delphi порівняння двох рядків на рівність.
StrUtils unit
function AnsiCompareStr (const String1, String2 : string ) : Integer;
Функція AnsiCompareStr порівнює String1 та String2 на рівність.
Це сучасна Регіональна безпечна форма CompareStr.
Всі Ansi команды підтримують багатобайтові символи та символи з акцентами.
Вона повертає такі значення:
- String1: від'ємне число
- String1 = String2: 0
- String1 > String2: додатне число
На порівняння не впливає довжина. Воно здійснюється по буквах. Але довший рядок більший, ніж коротший.
Порівняння чутливе до регістру.
Примітка.
В Delphi:
Символи верхнього регістру > Символи малих букв
Символи малих букв > Числа
Багатобайтові набори символів визначаються операційною системою. Наприклад, Східні версії Windows використовують багатобайтові символи для підтримки дуже великого набору символів.
Функція AnsiCompareStr: Порівняйте різні рядки
begin
// Порівняння двох очевидно різних рядків
CompareStrings('HELLO', 'WORLD');
// Порівняння ідентичних рядків
CompareStrings('Hi 2 you', 'Hi 2 you');
// Символи верхнього регістру слідують за малими літерами
CompareStrings('ABC', 'abc');
// Всі символи слідують за числами
CompareStrings('abc', '123');
end;
// Порівняння двох рядків, і показ більшого
procedure TForm1.CompareStrings(const string1, string2: string);
var
result : Integer;
begin
// Порівняння рядків
result := AnsiCompareStr(string1, string2);
if result <0 then showmessage(string1+' < '+string2);
if result = 0 then ShowMessage(string1+' = '+string2);
if result > 0 then ShowMessage(string1+' > '+string2);
end;
Результат
HELLO Hi 2 you = Hi 2 you
ABCdef = abcDEF
abc > 123
Подібні функції, процедури та команди
AnsiCompareText — порівняння двох рядків на рівність.
