
PHPで半角英数、全角文字の組み合わせを許可する正規表現の記述方法を教えてください。
PHPで、ウェブサービスをUTF-8で構築中です。入力項目のうち、1項目を半角英数(0-9、a-z、A-Z)と全角文字の利用を許可したいと考えています。
正規表現を使って判断しようとし、検索して調べてました。しかし、半角英数のみとか、全角文字のみで構成されている場合、という例は見つかるのですが、半角英数と全角文字の複合のみをチェックする方法がわからずにおります。
この
・半角英数、または全角文字で構成されている
という条件をチェックする記述方法を教えてください。
今回除外したいのは、半角の記号(0-9、a-z、A-Z以外の半角文字)ですので、
・半角の記号が含まれている
という条件をチェックする記述方法でもかまいません。
また、正規表現でなくても実現できるのであれば、正規表現にこだわる必要もありません。
よろしくお願いいたします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
なんとも言えませんが、こんな感じ?
<?php
$str="^aA#zZ!あ漢$";
$pattern="/[^ -\/:-@\[-`{-~]/u";
preg_match_all($pattern,$str,$match);
print_r($match);
?>
スペースとかタブとか特殊文字どうするのかもいまいち疑問
この回答への補足
>なんとも言えませんが、こんな感じ?
説明が足りませんでしたね、申し訳ありません。
ここではニックネームを入力してもらい、半角英数(0-9、a-z、A-Z)と全角文字のみで構成されていればOK、そのほかの文字が入っていたらNGという判定をしたいのです。
・半角英数のみ、全角のみ、半角英数、全角の混合、いずれもOKです
NG後の処理は別途書きますので、OKかNGかを判別できれば、と思います。
スペースはこの処理の前に削除していますので、特に必要はないのですが、このような文字も一括で省けるのであれば、一緒に処理したいと思います(というか、$patternにスペースも含まれているのですね)。
ご呈示していただいたサンプルですと、$matchに配列で1文字ずつ入力されているように思います。
上記のようにOKなのかNGなのかを判断するのは、$strと$matchの配列の文字をつなげて比べてみる、という方法を取る、ということでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのCOUNTIFが正しくカウ...
-
メッセージボックスで1025文字...
-
Excel関数「COUNTIF」で”文字”...
-
PHPで半角英数、全角文字の組み...
-
全角括弧と全角読点の間隔を狭...
-
正規表現に関して
-
php言語の全角入力のチェック方...
-
ColdFusionにて
-
エクセルでデータを30バイト...
-
HTML5の「pattern」属性で前後...
-
VBScriptである文字列に半角文...
-
全角英数文字が嫌われる理由を...
-
記号は半角と全角どちらがよい...
-
Replace関数は文字数の制限ある...
-
ショートメールの文字数
-
特定の文字を簡単な操作で半角...
-
質問です。メールについて
-
全角半角変換 C++/CLI
-
文字列前後の「全角空白/半角空...
-
XMLのタグ名の禁則文字
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
文字の入力で横バー上段、中断...
-
メッセージボックスで1025文字...
-
Excel関数「COUNTIF」で”文字”...
-
エクセルのCOUNTIFが正しくカウ...
-
全角括弧と全角読点の間隔を狭...
-
特定の文字を簡単な操作で半角...
-
エクセルでの漢字、カタカナ、...
-
VBAで英数字入力チェックしたい。
-
XMLのタグ名の禁則文字
-
Phonetic関数を利用して文章中...
-
全角英数文字が嫌われる理由を...
-
半角記号、全角記号を含む正規...
-
半角スペース の文字化け...
-
Replace関数は文字数の制限ある...
-
パソコンで全角、半角文字の切...
-
記号は半角と全角どちらがよい...
-
2つ以上の連続する空白文字を除去
-
文字列中の両丸括弧を取り除くV...
-
バッチファイル 全角検索
-
半角英数文字を全角英数文字に...
おすすめ情報