日本語行だけをgrep その1

ログファイルから日本語っぽい文字列を含む行のみを取り出したいとGoogleったらStackOverflow先生がヒントを教えてくれました。

vim – How to match chinese characters with grep? – Stack Overflow

To match just lines (filenames) that have Han (Chinese) characters, you can use [\p{Han}]

grep も進化してるんですね。平仮名または片仮名を1文字でも含んでいる行を取り出せそうです。まずはスクリーンショット。例によってWindows10 Cygwinです。

image

次は端末ログです。

/c/c/tmp$ echo $LC_ALL
ja_JP.utf8
/c/c/tmp$ echo -e "あ a い i\naiueo
 \n您好\nワ wa をン" |
 grep -P '[\p{Hiragana}]|[\p{Katakana}]'
あ a い i
ワ wa をン
/c/c/tmp$ echo -e "あ a い i\naiueo
\n您好\nワ wa をン" |   grep -Pv '[\p{Hiragana}]|[\p{Katakana}]'
aiueo

您好
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s