StrCompare

2つの文字列をアルファベット順に比較します。

Result := StrCompare(String1, String2 , CaseSense)

パラメータ

String1, String2

型:文字列

比較する文字列。

CaseSense

型:文字列 or 整数(ブーリアン)

省略したときは、Offが初期値になります。そうでないときは、次のいずれかの値を指定します:

On または 1 (true):大文字と小文字を区別して比較します。

Off または 0 (false):大文字と小文字を区別して比較しません。つまり、AからZまでの文字は、その小文字と同じものとみなされます。

Locale:比較は、現在のユーザーのロケールのルールに従って、大文字と小文字を区別しない。例えば、英語や西欧のロケールでは、A~Zの小文字だけでなく、ÄやÜなどの非ASCII文字も小文字と同じように扱われることがほとんどです。Localeは、比較する文字列の性質によって、Offの1~8倍遅くなります。

Logical:Localeと似ているが、文字列中の数字はテキストではなく数値コンテンツとみなされる。例えば、"A2""A10"よりも小さいとみなされる。しかし、2つの数値が先頭のゼロの有無によってのみ異なる場合、先頭のゼロがある文字列は、もう一方の文字列よりも小さいとみなされることがある。正確な動作はOSのバージョンによって異なる場合があります。

戻り値

型:整数

String1String2の関係を示すために、この関数は以下のいずれかを返す:

2つの文字列間の特定の関係をチェックするには、結果を0と比較する。事例:

a_less_than_b := StrCompare(a, b) < 0
a_greater_than_or_equal_to_b := StrCompare(a, b) >= 0

備考

この関数はソートコールバックによく使われる。

SortVerCompare

大文字小文字を区別しない比較と区別する比較の違いを示す。

MsgBox StrCompare("Abc", "abc") ; Returns 0
MsgBox StrCompare("Abc", "abc", true) ; Returns -1