あか〜ん

正規表現の続き。

import sys, re

f = open(sys.argv[1])
p = re.compile(sys.argv[2])

line = 0
for x in f:
    line += 1
    print "a"
    print x
    if p.search(x):
        print "%d: %s" % (n, x)

f.close()

これでコマンドラインでファイル名、パターンの引数を与えれば、パターンがどの行にあるか分かる。
が、が、日本語には対応していない。
ちょっとやりたいことがあって、ファイルの日本語検索をしたいんだけれども、これじゃだめなんだ。
どうしたらいいか分からないので今日はもうあきらめよう。

追記

この辺りを読めばちょっとは分かるかも⇒http://python.matrix.jp/tips/string/encoding.html
近日中に読む。