LoginSignup
0
0

More than 5 years have passed since last update.

日本語の文字(ひらがなカタカナ漢字)だけにマッチする正規表現 in Perl

Last updated at Posted at 2015-05-05
perl
# ひらがな, かたかな, 漢字のいずれかを一文字以上含む行を抽出
use Encode qw/decode_utf8 encode_utf8/;
if (decode_utf8($_) =~ /(\p{InHiragana}|\p{InKatakana}|\p{InCJKunifiedideographs})/) {
  print;
}

環境によるかも知れないが、decode_utf8する必要があった。

ScriptとBlockという二つの分類方法。Blockは連続したコードポイント(文字のID)をまとめたものであるのに対し、後者はコードポイントと関係ない基準でまとめあげたグループ(漢字全体、とか)。ScriptではHan、BlockではCJKunifiedideographが、それぞれ漢字集合に付けられた名前。(Hanはhan4yu3のhan。han2yu3なら韓語。)InCJKunifiedideographs も Han も漢字だが、前者のほうが範囲はせまい。日本語に限定したい場合にどちらが良いかは分からない。

InHiraganaとHiragana、InKatakanaとKatakanaもやや異なる。特にカタカナの場合、半角を含むか、中黒(・)や長音符(ー)を含むかどうかという大きな違いがある。詳しくは こちら を参考に。

ググって出てきた。多謝。
http://d.hatena.ne.jp/mukku-ver3/20100104

長いintroductionがなく、簡便な正規表現の解説。
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/pe_k08.htm

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0