分かち書き
分かち書き
KAKASIとかChaSenとかMeCabを入れるのが面倒だったので作った日本語を分かち書きするコード。
my @CharUtf8 = ( '[\x{ff10}-\x{ff19}]+', # [0-9]+ '[\x{ff21}-\x{ff3a}\x{ff41}-\x{ff5a}]+', # [a-zA-Z]+ '\x{3092}', # を '[\p{InHiragana}\x{30fc}]+', # [ぁ-ん゛゜ゝゞー]+ '\p{InKatakana}+', # [ァ-ヶ・ーヽヾ]+ '(?:\p{Han}\p{InHiragana})', # 漢字1文字+ひらがな1文字 '\p{Han}+', # <漢字>+ ); my $CharUtf8 = "(". join( "|", @CharUtf8) .")"; ---- s/$CharUtf8/ $1 /og;
これでもそれなりになんとかなる、気がする。個人的にPOPFileにパッチをあてて使っているんだけど、KAKASIを使っているときと遜色ないです。
ひらがなに音引きを入れるべきかとか、カタカナの中黒は外したほうがいいんじゃないかとか、考慮する点はありますけど。
というか、こういう感じのをCでライブラリになってると使えるんじゃないの? とか思った。自分で書こうとは思わないけど。