Pythonで、文字列に日本語が含まれているか判定する を参考に、引数で与えられたテキストファイルを走査し、2 バイト文字を含む行だけ表示する Python スクリプト例は以下の通りです。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import unicodedata
def is_japanese(string):
string = unicode(string, 'utf-8')
for ch in string:
name = unicodedata.name(ch)
if "CJK UNIFIED" in name \
or "HIRAGANA" in name \
or "KATAKANA" in name:
return True
return False
def main():
f = open(sys.argv[1])
line = f.readline()
while line:
line = line.replace('\n', '')
line = line.replace('\r', '')
if is_japanese(line):
print(line)
line = f.readline()
f.close
if __name__ == "__main__":
main()
コメント