• ベストアンサー

VB.NETで「タナカ タロウ」の文字列比較で「タナカタロウ」、「タナカ タロウ」(※半角空白)でも一致する比較方法

タイトルどおりなのですが、 「タナカ タロウ」(全角スペース) があったとしてこれと比較するときに 「タナカ タロウ」(半角スペース) 「タナカタロウ」(スペースなし) でも比較できる方法はどうやればいいのでしょうか? また、できれば 「たなか たろう」でも「タナカ タロウ」(半角カナ)でも一致させたいのですが、いい方法ないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • gimmick
  • ベストアンサー率49% (134/270)
回答No.1

対象文字列を (1)半角スペースを除去 (String.Repace()を使用) (2)全角スペースを除去 (String.Repace()を使用) (3)ひらがなをカタカナに変換 (StrConv()を使用) (4)半角カタカナを全角カタカナに変換 (StrConv()を使用) と処理してから比較すればよいと思います。

参考URL:
http://www.atmarkit.co.jp/fdotnet/dotnettips/266vbhirakana/vbhirakana.html
Haule
質問者

お礼

ありがとうございました! 無事できましたー

その他の回答 (1)

  • yamada_28
  • ベストアンサー率43% (21/48)
回答No.2

StrConv関数とReplaceメソッドで実現できます。 StrConv関数: 指定に従って変換された文字列型 (String) の値を返します。ようは「全角←→半角、大文字←→小文字、カタカナ←→ひらがな」など変換できます。詳しくはヘルプを参照してください。 Replaceメソッド: このインスタンスに出現する指定 Unicode 文字または String をすべて、別に指定した Unicode 文字または String に置換します。これも詳しくはヘルプを参照してください。 【考え方】 ・全角または半角スペースが間にある文字列とない文字列 ・カタカナとひらがな 特定の形式に文字列を整えて比較すれば良いワケですね。

Haule
質問者

お礼

ありがとうございました! 無事できましたー

関連するQ&A