[PHP-users 32728] Re: mb_eregで'ファ'がマッチしない

Tatsuo Ishii t-ishii @ sra.co.jp
2007年 10月 14日 (日) 20:12:54 JST


石井です.

>   こんばんは。shin-1です。
> 
> >下記、utf-8で書かれたスクリプトを実行すると、'ファ'だけ、マッチしません。
> >対処法、問題等があれば教えて頂けないでしょうか?
> >    if ( mb_ereg( "^[ア-ンー ]+$", $s ) ) echo "match!";

これはどうしてなのかわかりませんが...

> 「UTF8 カタカナ ァ」で検索するとこんな記事がヒットしました。
> http://www.itt-web.net/modules/xeblog/?action_xeblog_details=1&blog_id=549
> 
> 最後の表に纏められていますが、UTF8でのカタカナは
> 小文字の「ァ」e382a1が最小で、「ヴ」e383b4が最大のようです。
> ヵとかヶとかはカタカナじゃないですしね。
> 範囲指定で正規表現を書くなら[ァ-ヴー ]でしょう。

http://www.unicode.org/charts/

を見ると,もうちょっとありそうです.

Katakana: U+30A0-U+30FF(e382a0-e383bf)
Katakana Phonetic Extentions: U+31F0-U+31FF(e387b0-e387bf)
Halfwidth Katakana: U+FF65-U+FF9F(efbda5-efbe9f)

まあ,どこまでをカタカナとして扱いたいのかによると思いますが.
--
Tatsuo Ishii
SRA OSS, Inc. Japan


PHP-users メーリングリストの案内