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

# AnsiStrLIComp

Compares a given number of characters of a string, case insensitive.

## Declaration

Source position: sysstrh.inc line 99

`function AnsiStrLIComp(`
`S1: PChar;`
`S2: PChar;`
`MaxLen: SizeUInt`
`):Integer;`

## Description

AnsiStrLIComp compares the first Maxlen characters of 2 PChar 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-insensitive.

Remark: | A widestring manager must be installed in order for this function to work correctly with various character sets.

## Errors

None.

## See also

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

## Example

    Program Example57;

    { This program demonstrates the AnsiStrLIComp function }

    Uses sysutils;

    Procedure TestIt (S1,S2 : Pchar; L : longint);

    Var R : Longint;

    begin
      R:=AnsiStrLIComp(S1,S2,L);
      Write ('First ',L,' characters of "',S1,'" are ');
      If R<0 then
        write ('less than ')
      else If R=0 then
        Write ('equal to ')
      else
        Write ('larger than ');
      Writeln ('those of "',S2,'"');
    end;

    Begin
      Testit('One string','One smaller string',255);
      Testit('ONE STRING','one String',4);
      Testit('One string','1 STRING',0);
      Testit('One STRING','one string.',9);
    End.