
こんにちは,よろしくお願いします。
名前(姓と名に分けて)を入力してもらうフォームを作っています。
姓名を日本語,つまり,漢字,ひらがな,カタカナを全角(2バイト文字?)で入力してもらいたいと考えています。
ぜんぜんわからないのですが,パターンを次のように考えて,
var pattern = "[亜-熙ぁ-んァ-ヶ]+";
if(seimei.match(pattern)){
上記のようにやってみたらうまくいったように思えましたが,「蓬莱」や「紀香」などの漢字を入力するとマッチしません。
文字セットは”UTF-8”を使っています。
すべての漢字,ひらがな,カタカナをマッチさせるようにするにはどのようなパターンで行えばいいのでしょうか?教えてください。
よろしくお願いします。
No.4ベストアンサー
- 回答日時:
日本語入力ソフト(ことえり、MS-IME、ATOKなど)の文字コード表を見れば、一覧できます。
unicodeでは「ん」の次に「う゛」( う に点々)や「ゝ」「ゞ」という文字(直前の文字を続けるという意味の文字)もありますね。
手っ取り早く「ぁ-龥」なら記号も含まれますし、漢字だけなら「一」から「龥」まででいいと思います。
「日本語」を調べるのか「名前」で調べるのかで方法は異なりますが、
名前なら人名用漢字しか使えないので、人名用漢字一覧を作って、それに含まれない文字が入ってたらNGとかにしないとダメなのでは?
あと、留学生観光客海外からの登録など、外国人ならアルファベット、ハングル、中国語(中国漢字)、その他日本語以外の文字もたくさんありますが、
そう言う人たちは論外?
talooさん,ありがとうございました。
文字コードの実像をイメージすることができました。このようになっているのですね。なるほど。
MS-IMEでは,0x9fa5などのようにコードが記述してありましたが,「龥」のような表し方はなんという表し方なのでしょうか?
また,具体的に「0x9fa5」はどのように表すのでしょうか?もしよろしければ教えてください。
また,[一-龥]のように記述しても,エラーが出てしまいました。このような表記法で正規表現を記述する際には,どのような形式で記述すればよいのでしょうか?
もし,よろしければ教えていただけるとありがたいです。よろしくお願いします。
ちなみに,今回は[一-龥]のように記述を行って,事なきを得ました。
ひとまず,ありがとうございました。
〔追伸〕
お礼を投稿しようとして気づきました。上記の漢字は,このページではこのように自動変換されてしまうのですね。でも,このような表し方をなんと言うのでしょうか?ご存知でしたら上記の私の疑問についてお答えいただけるとありがたいです。
No.3
- 回答日時:
あ、「紀香」を忘れてた。
'紀香'='\u7d00\u9999' です。
他の漢字もIMEなどから漢字コード表を使用してUnicodeのコード範囲を
調べてみてください。
(ぼくはATOK使って調べました)
pick52さんありがとうございました。
なるほど,このようにして一覧を見ることができるのですね。初めて知りました。
今後とも,よろしくお願いします。
ありがとうございました。
No.2
- 回答日時:
最近のJavaScriptではエンコードは関係なく文字列はUnicodeと
見なされます(JSのバージョン依存ですが)。
なので、正規表現でもUnicodeを使用します。
// '\u84ec' = '蓬' / '\u83b1' = '莱'
alert('蓬莱'.match(/[\u84ec\u83b1]+/g));
これでマッチするはずです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
jqueryのselect2で検索欄の文字...
-
タグを教えてください。
-
ラジオボタンを複数選択したと...
-
jsで質問です。 formをsubmitし...
-
2025年相性がいい人のサイトの...
-
CookieをWebStoeageに変える
-
Adobe acrobat proでフォームを...
-
Outlookのアカウントがあるとメ...
-
<tr>指定した表の行要素をボ...
-
食材の期限を管理するためにGAS...
-
ビデオのJSについて
-
鍵盤アプリで、スマホの画面に...
-
<div>のタッチ状態を維持したま...
-
jQueryでシンセサイザーを作っ...
-
プログラミング 学習
-
HTMLでサブフレームから親のス...
-
ジャバスクリプトについて。
-
プログラムについて。
-
Q&A掲示板の入力フォームに文字...
-
メールフォームの日付入力フォ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAによる第3、4水準文字の判定...
-
エクセルVBA/ Formatで文字列が...
-
正整数の半角数字かどうか判定する
-
VB.NET2003 テキストボックスに...
-
「終了していない文字列型の定...
-
文字認証の問題
-
エクセル 半角英数6文字以上 ...
-
助けてください!出来ないと解...
-
入力チェック
-
VBを使ってのタイピングについて
-
Visual Basic 6.0 のテキストボ...
-
入力された文字を1文字ずつチ...
-
文字列の検索
-
javascript 文字列の最後から1...
-
メルアドをチェックする正規表現?
-
脳内メーカーや自己紹介工場
-
入力文字を瞬時に変える
-
AccessVBAで教えて下さい。
-
replaceで正規表現を利用したい
-
正規表現
おすすめ情報