文字列が等しいか
StrComp(string1, string2, [compare])
同じ文字列なのか、違う文字列なのか、それだけを判断するときには
StrComp()を使うと良いです。
第三引数は、 文字列比較の種類を指定できます。(省略可)
省略した場合の初期値は「0」です。
「0」・・・バイナリモードで比較を行う(カタカナ、平仮名等の区別をする)
「1」・・・テキストモードで比較を行う(カタカナ、平仮名等の区別をしない)
下記は「バイナリモード」での比較です。
一番上の行のみ、「0(等しい)」が返ってきます。
ret = StrComp("キノコ", "キノコ") '「0」等しい ret = StrComp("きのこ", "キノコ") '「-1」等しくない ret = StrComp("キノコ", "キノコ") '「1」等しくない
下記は、「テキストモード」での比較です。
全て「0(等しい)」が返ってきます。
ret = StrComp("キノコ", "キノコ", 1) '「0」等しい ret = StrComp("きのこ", "キノコ", 1) '「0」等しい ret = StrComp("キノコ", "キノコ", 1) '「0」等しい
詳しくはマイクロソフトのリファレンスからどうぞ。
特定の文字が含まれているか
文字列の中に、特定の文字列が含まれているか調べるのには
InStr関数を使うのが簡単です。
InStr([start], string1, string2, [compare])
第一引数は、先頭何文字目から文字列検索をしたいか指定します。(省略可)
第二引数は、検索対象の文字列を指定します。
第三引数は、探したい文字列を指定します。
第四引数は、文字列比較の種類を指定します。(省略可)
戻り値は、一致する文字列がある場合には先頭文字列のインデックス番号、
また、一致する文字列が無い場合は「0」が結果として出ます。
下記のスクリプトが例です。
「0」が出ればその文字列は存在しないと判断できます。
ret = InStr("あいうえお", "あ") '「1」 ret = InStr("あいうえお", "う") '「3」 ret = InStr("あいうえお", "いうえお") '「2」 ret = InStr("あいうえお", "うえお") '「3」 ret = InStr("あいうえお", "いうい") '「0」 ret = InStr("あいうえお", "アイウエオ") '「0」 ret = InStr("あいうえお", "アイウエオ") '「0」
コメント