StrComp
文字列比較の結果を示す値を返します。
Synopsis
StrComp(string1,string2[,compare])
引数
string1 | 有効な文字列式。 |
string2 | 有効な文字列式。 |
compare | オプション — 文字列を評価する際に使用する比較の種類を示す数値。これを省略すると、バイナリ比較を実行します。値については、概要を参照してください。 |
概要
StrComp 関数は、2 つの文字列を文字単位で比較して、最初の不一致文字が見つかった時点か、文字列の最後が検出された時点で値を返します。StrComp は、以下の値を返します。
-
2 つの文字列が同一の場合、または compare=1 で大文字小文字の違いのみの場合には 0 を返します。
-
string1 に不一致の文字があり、string2 内の対応する文字よりも、ANSI 文字コードの値が大きい場合は 1 を返します。compare=1 の場合、大文字小文字の違いは、同一と見なされます。string1 が string2 よりも長い場合、1 を返します。
-
string1 に不一致の文字があり、string2 内の対応する文字よりも、ANSI 文字コードの値が小さい場合は -1 を返します。compare=1 の場合、大文字小文字の違いは、同一と見なされます。string1 が string2 よりも短い場合、-1 を返します。
引数 compare の値は以下のとおりです。
定数 | 値 | 説明 |
---|---|---|
vbBinaryCompare | 0 | バイナリ比較を実行しますこれが既定です。 |
vbTextCompare | 1 | テキスト比較を実行します大文字と小文字は区別されません。 |
StrComp 関数には、以下の返り値があります。
条件 | StrComp の返り値 |
---|---|
string1 は string2 より小さい | -1 |
string1 は string2 と等しい | 0 |
string1 は string2 より大きい | 1 |
例
以下の例は、大文字と小文字だけが違う 2 つの文字列を比較します。
Println "default: ",StrComp("abcd","ABCD") ' Returns 1
Println "binary: ",StrComp("abcd","ABCD",0) ' Returns 1
Println "textual: ",StrComp("abcd","ABCD",1) ' Returns 0
Println "default: ",StrComp("ABCD","abcd") ' Returns -1
Println "binary: ",StrComp("ABCD","abcd",0) ' Returns -1
Println "textual: ",StrComp("ABCD","abcd",1) ' Returns 0
以下の例は、長さだけが違う 2 つの文字列を比較します。
Println "binary: ",StrComp("abcde","abcd",0) ' Returns 1
Println "textual: ",StrComp("abcde","abcd",1) ' Returns 1
Println "binary: ",StrComp("abcd","abcde",0) ' Returns -1
Println "textual: ",StrComp("abcd","abcde",1) ' Returns -1