No.4ベストアンサー
- 回答日時:
No2です。
以下だめですかねえ、問題ないと思うのですが..※ここに投稿する時半角カタカナのア-ンが全角カタカナのア-ンに勝手に変わってます。
<?php
mb_internal_encoding("UTF-8");
mb_regex_encoding("UTF-8");
$namae = $_REQUEST['namae'];
$patarn = "[^_a-zA-Z0-9ア-ン]+( [^_a-zA-Z0-9ア-ン]+)+";
if(mb_ereg_match($patarn,$namae)){
echo "match";
}else{
echo "unmach";
}
?>
返事が遅れて済みません。
開発用のPCを離れていました。
どうやら、全く問題なく機能しているようです。
文字コードを指定する必要が有ると言う事ですかね。
考えて下さって、有り難うございます。
これで作業が進みます。
No.3
- 回答日時:
utf-8でしたら、
preg_match('/^[ア-ンあ-ん亜-腕弌-熙a-zA-Z]+[ | ][ァ-ヶぁ-ん亜-腕弌-熙a-zA-Z]+$/', $name) > '0'
↓
preg_match('/^[ア-ンあ-ん一-龠a-zA-Z]+[ | ][ァ-ヶぁ-ん一-龠a-zA-Z]+$/', $name) > '0'
ですが、名字がひらがなというのはないような気がしたので、
↓
preg_match('/^[ア-ン一-龠a-zA-Z]+[ | ][ァ-ヶぁ-ん一-龠a-zA-Z]+$/', $name) > '0'
が、近似値と思ったのですが、「ひらがなのみでの入力の場合スペースを入れなくても真になってしまうようです」・・・あれ、何ででしょう?「一-龠」の中にスペースが含まれるとか?
レベル低くて済みませんでした。
>>これを元に自分も考えてみようと思います。
結果が分かったら教えてくださいませ。
すみません、返事が遅れてしまいました。
どうやらバグのようです。。
参考サイト↓
http://mlog.euqset.org/archives/php-users.php.gr …
半角スペースを使用すれば問題ないようですが。。。
姓名の間に半角スペースというのはユーザビリティーが最悪に。。
たしかに、名字がひらがなは無さそうなのでこのまま使おうと思います。
まぁよく考えたら、姓名別々に入力してPHP側でスペースを入れて結合するのが一番楽かなと。。。
今回は助けていただきありがとうございました。
No.2
- 回答日時:
マルチバイト対応のmb_ereg関数を使って、英数字と半角カタカナ以外
の文字全部の1文字以上としてしまえばどうでしょう。
if (mb_ereg_match("[^_a-zA-Z0-9ア-ン]+( [^_a-zA-Z0-9ア-ン]+)+", 対象変数))
回答ありがとうございます。
簡単な条件分岐のコードで試してみましたが、
Warning: mb_ereg_match() [function.mb-ereg-match]: mbregex compile err: premature end of char-class in /virtual/shady/public_html/phptest/test2_2.php on line 11
と言うエラーが出てしまいました。。。
No.1
- 回答日時:
$name = '斎 藤太郎';
if(preg_match('/^[ア-ンあ-ん亜-腕弌-熙a-zA-Z]+[ | ][ァ-ヶぁ-ん亜-腕弌-熙a-zA-Z]+$/', $name) > '0') print "全角スペースが入っています";
else print "全角スペースが入っていません";
--------------------------
(カタカナ、ひらがな、漢字)の文字 + 全角/半角スペース1個 + (カタカナ、ひらがな、漢字)の文字の正規表現です。
上記のはeuc-jpです。漢字は第二水準まで。
utf-8 にすると、亜-腕弌-熙 → 一-龠 に変更すると全ての漢字になります。
shift_jisは未確認。
厳密な確認をしていませんが。
回答有り難うございます。
概ね成功ですが、ただひらがなのみでの入力の場合スペースを入れなくても真になってしまうようです。
これを元に自分も考えてみようと思います。
ちなみにutf-8で開発しています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/02 10:20
- その他(プログラミング・Web制作) Pythonを用いたフラッシュ暗算ソフトの開発に必要なもの 2 2023/01/29 02:22
- Excel(エクセル) exel 漢字・英数字混在セルの入力規則 5 2022/04/03 11:08
- その他(Microsoft Office) Excelで時間計算(負) 8 2023/02/26 05:47
- その他(パソコン・スマホ・電化製品) 人間の長期記憶に関するモデルについて。 下記の内容をもとに、一番下の質問の具体例が思いつく方いたら具 1 2023/06/30 18:21
- Excel(エクセル) EXCELでの文字・数字入力の基本について教えてください。 2 2023/05/29 23:17
- その他(Microsoft Office) WordやExcelで英数字のみ半角または全角にしたい 6 2022/08/03 08:18
- 日本語 「~人」と「~名」の使い分け 2 2022/06/02 11:59
- Excel(エクセル) Excelで漢字人名が勝手に並び変わる(続) 4 2023/03/21 21:28
- その他(コンピューター・テクノロジー) 正規表現の置換で数値を合計したいです。 2 2022/10/17 11:01
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
文字の入力で横バー上段、中断...
-
メッセージボックスで1025文字...
-
全角英数文字が嫌われる理由を...
-
VBAで英数字入力チェックしたい。
-
Excel関数「COUNTIF」で”文字”...
-
XMLのタグ名の禁則文字
-
エクセルでの漢字、カタカナ、...
-
半角全角スペースの削除(先頭...
-
文字列中の両丸括弧を取り除くV...
-
エクセルのCOUNTIFが正しくカウ...
-
データ末尾の半角スペース
-
半角記号、全角記号を含む正規...
-
全角半角混在の文字列から○文字...
-
ショートメールの文字数
-
パワーポイントの""(ダブルク...
-
全角括弧と全角読点の間隔を狭...
-
VBAのリストボックスでの文字化け
-
文字列の漢字の有無の検索
-
IT企業の技術屋にとって全角英...
-
Accessの文字数を調べたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メッセージボックスで1025文字...
-
文字の入力で横バー上段、中断...
-
Excel関数「COUNTIF」で”文字”...
-
全角括弧と全角読点の間隔を狭...
-
エクセルのCOUNTIFが正しくカウ...
-
半角記号、全角記号を含む正規...
-
記号は半角と全角どちらがよい...
-
XMLのタグ名の禁則文字
-
エクセルでの漢字、カタカナ、...
-
Replace関数は文字数の制限ある...
-
VBAで英数字入力チェックしたい。
-
文字列中の両丸括弧を取り除くV...
-
特定の文字を簡単な操作で半角...
-
全角英数文字が嫌われる理由を...
-
全角半角変換 C++/CLI
-
VBScriptである文字列に半角文...
-
半角文字と全角文字の判別の仕方
-
2つ以上の連続する空白文字を除去
-
Excel2002 一桁数字だけ全角に置換
-
VB.net テキストボックス半角文...
おすすめ情報