全角文字以外を許可する正規表現はどのように記述すればよいのでしょうか?
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/02/22 01:09
回答3件
0
ベストアンサー
半角英数記号だけしか含まれていないということですよね。
/\A[ -~]*\z/
\A
\z
は、文字列先頭・末尾を表すPerl拡張の正規表現なので、使えない場合は行頭・行末^
$
で代用してください。
半角仮名も許したい場合は、
`/\A[ -~。-゚]*\z/'
投稿2017/02/22 01:08
編集2017/02/22 01:13総合スコア84423
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
Unicode を使うと仮定します。
Unicode一覧 0000-0FFF を見て、使いたい範囲のものを使って下さい。
仮に「あ」から「ん」までの文字を許可するなら[あ-ん]と書き、この範囲の文字を許可せずそれ以外を許可するやら[^あ-ん]と書きます。
半角英数字のみ許可するなら [0-9a-zA-Z] ですが、半角記号も含めるなら [ -] で、それの 0 文字以上の連続が [ -]* です。
文字列を [^ -~] で検索してヒットすれば半角英数記号以外の文字が含まれているということになります。
訂正
[^ -}] ではなく [^ -~] でしたので修正しました。
投稿2017/02/22 01:11
編集2017/02/22 01:26総合スコア28656
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。