- ベストアンサー
都合の良い検索
1バイト文字は正規表現でiをつければ大文字小文字認識しますが、その要領で「アイウエオ」の入力で「アイウエオ(半角カナ)」や、あわよくば「あいうえお」まで認識してくれる関数みたいなのは手元に存在するのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
一度mb_convert_kana()で変換してから正規表現でチェックしてみては? <? $str="あいうえおアイウエオアイウエオABCABC123123"; (2つめのアイウエオは半角) $str=mb_convert_kana($str,"kha"); print $str; ?>
その他の回答 (1)
- yambejp
- ベストアンサー率51% (3827/7415)
回答No.2
ごめんなさい。こちらの提示した例が悪かった。 変換して戻すのではなく、チェック用の変数で一度うけるとよいでしょう。 <? $str="あいうえおアイウエオアイウエオABCABC123123"; $str2=mb_convert_kana($str,"kha"); if(preg_match("/[アイウエオァィゥェォ]/",$str2)){ print "マッチしました"; } ?>
質問者
お礼
こんな簡単にできるとは思いませんでした。バッチリです。ありがとうございました!
補足
便利な関数の紹介、ありがとうございました。 検索として利用を考えています。該当文字列を格納して表示までしたいので、半カナ変換後に元の状態に戻せればバッチリなのですが。。