• 締切済み

正規表現による文字列のチェックについて

文字列の入力チェックで困っています。 入力された文字列が以下の文字のみで構成されているか、正規表現でチェックするにはどうすれば良いか教えてください。 できれば一発でチェックしたいです。 ・全角(漢字、ひらがな、かたかな)※英数字を含め、左記以外の全角は使用禁止 ・半角英数字 ・半角記号(「-」「.」「:」「*」「&」)※後から追加変更される可能性がある Java(UTF-8)とJavaScript(Shift-JIS)それぞれで対応できる方法をお願いいたします。

みんなの回答

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

異体字を考えると頭痛が痛い問題だったりします.

  • SortaNerd
  • ベストアンサー率43% (1185/2748)
回答No.2

基本的には[]の中にマッチさせたい文字をそのまま書くだけです。 また、「A-Z」のように「-」を挟むことで連続する文字コードの文字をまとめて指定できます。 問題は「全角(漢字、ひらがな、かたかな)」の内容ですね。 「ㇰㇱㇲ…」とか「𛀁𛀀」とか普段使わない漢字まで含むのかと、日本語以外の文字で誤マッチを許すかどうかで答えが変わります。 こちらに分かりやすくまとまっていますので適に考えてください。 http://tama-san.com/?p=196 あと、Java(UTF-8)とJavaScript(Shift-JIS)というのは何か勘違いされているようです。 それはソースの文字コードではありませんか? プログラム上の扱いはどちらもUnicode(のUTF-16またはそれに類するもの)だったと思います。

回答No.1

https://www.google.co.jp/search?q=%E6%AD%A3%E8%A6%8F%E8%A1%A8%E7%8F%BE+%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89+%E7%AF%84%E5%9B%B2 >・半角英数字 >・半角記号(「-」「.」「:」「*」「&」)※後から追加変更される可能性がある これはわざわざ教えるまでもなくそのままでいいので省略。

関連するQ&A

専門家に質問してみよう