[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'sysutils' (#rtl)

# CompareStr

Compare 2 ansistrings case-sensitively, ignoring special characters.

## Declaration

Source position: sysstrh.inc line 79

`function CompareStr(`
`const S1: string;`
`const S2: string`
`):Integer; overload; function CompareStr(`
`const S1: string;`
`const S2: string;`
`LocaleOptions: TLocaleOptions`
`):Integer; overload;`

## Description

CompareStr compares two strings, S1 and S2, and returns the following result:

<0
  if S1<S2.
0
  if S1=S2.
>0
  if S1>S2.

The comparison of the two strings is case-sensitive. The function does not take internationalization settings into account, it simply compares ASCII values.

## Errors

None.

## See also

AnsiCompareText |  | Compare 2 ansistrings, case insensitive, ignoring accents characters.
AnsiCompareStr |  | Compare 2 ansistrings, case sensitive, ignoring accents characters.
CompareText |  | Compare 2 ansistrings case insensitive.

## Example

    Program Example65;

    { This program demonstrates the CompareStr function }
    {$H+}

    Uses sysutils;

    Procedure TestIt (S1,S2 : String);

    Var R : Longint;

    begin
      R:=CompareStr(S1,S2);
      Write ('"',S1,'" is ');
      If R<0 then
        write ('less than ')
      else If R=0 then
        Write ('equal to ')
      else
        Write ('larger than ');
      Writeln ('"',S2,'"');
    end;

    Begin
      Testit('One string','One smaller string');
      Testit('One string','one string');
      Testit('One string','One string');
      Testit('One string','One tall string');
    End.

Documentation generated on: May 14 2021