- ベストアンサー
正規表現の全角、半角、大文字、小文字の区別について
こんにちわ 最近正規表現の勉強をし始めたのですが フォームから入力された$keywordの 全角、半角、大文字、小文字の区別をなくすには どうすれば可能なのでしょうか? 今のところ効率などは求めていませんので 初心者が理解できるくらい簡単なご返答をよろしくお願いします
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
効率を求めないんだったら・・・ $data =~ s/A/a/; $data =~ s/B/b/; $data =~ s/C/c/; ・ ・ ・ $data =~ s/Z/z/;
その他の回答 (2)
- thenetisvast
- ベストアンサー率63% (7/11)
回答No.2
これで、いかがでしょうか &jcode::tr( \$keyword, 'A-Za-z', 'A-Za-z'); $output = lc $keyword; 1行目で,全角→半角変換 2行目で、大文字→小文字変換
質問者
補足
ご回答ありがとうございます それとjcodeを使用しない方法ってありますか? 使用しないほうが何かと都合がいいのですが よろしくお願いします
- omni2
- ベストアンサー率53% (33/62)
回答No.1
区別をなくすという意味がもうひとつよくわかっていないのですが、 $keywordに含まれる文字は、a-z0-9のみ許可したいが、大文字A-Zや全角の0-9などを、半角に変換したいということでしょうか?? このあたりを具体的に書かれたら、 正規表現に強い方が回答してくださるとおもいます。
質問者
補足
例えばABCとABCとabcとabcで 検索した結果どれで検索しても同じ結果が出るようにしたいです
補足
皆さんありがとうございます まだ自分は基礎が出来ていないのでもう少し正規表現の基礎を身に付けてみようと思います