VBScript - 大文字と小文字、全角と半角を区別せずに比較する(文字列の比較モードの話)
VBScript - 大文字と小文字、全角と半角を区別せずに比較する(文字列の比較モードの話)
大文字の "A" と小文字の "a" 、全角の "A" と半角の "A" を同じと見なすにはどうすれば良いのか。
Replace 関数や StrComp 関数などの引数には、文字列の比較モードを指定できるようになっている。
この比較モードに「テキストモード」を指定することで、大文字と小文字、全角と半角を区別せずに比較するようになる。
ちなみに文字列の比較モードには、以下の2つのモードがある。
- バイナリモード(
vbBinaryCompare
:0
) - 大文字と小文字、全角と半角を区別して比較する。
- テキストモード(
vbTextCompare
:1
) - 大文字と小文字、全角と半角を区別せずに比較する。
全角カナと半角カナも区別されなくなる。ただし、濁点・半濁点を含むカナは別物と判断されるので注意すること。
例
大文字と小文字は同じ扱い。
ret = StrComp("abc", "ABC", vbTextCompare)
' → 0
全角と半角も同じ扱い。
ret = StrComp("abc", "abc", vbTextCompare)
' → 0
大文字と小文字、全角と半角の混在も同じ扱い。
ret = StrComp("abc", "ABC", vbTextCompare)
' → 0
全角カナと半角カナも同じ扱い。
ret = StrComp("アイウエオ", "アイウエオ", vbTextCompare)
' → 0
しかし、濁点または半濁点のカナは、全角と半角で異なる文字と判断される。
ret = StrComp("ガ", "ガ", vbTextCompare)
' → 1
ret = StrComp("パ", "パ", vbTextCompare)
' → 1
アカウントを作成 して、もっと沢山の記事を読みませんか?
この記事が気に入ったら ことりと さんを応援しませんか?
メッセージを添えてチップを送ることができます。
ことりと さんにチップを送りました
チップをありがとうございます。
メッセージは管理画面から確認できます。
酒とアクアリウムが最近の楽しみ。
このクリエイターの人気記事
最新記事
TOPVIEWの人気記事
おすすめの記事
この記事にコメントをしてみませんか?