2011-07-05 6 views
2

私はCP1252でエンコードされたテキストファイルを持っています。ここで私はpython regexを使ってパターンにマッチします。たとえば、次のテキストが正規表現文字列'1\s*(\w*)\s*(<.*$)'CP1252でエンコードされたファイルの正規表現

1 kAMpleksa  <fs af='kAMpleksa,unk,,,,,,'> 

しかし、テキストが次のテキストにアクセント「U」などの特殊文字が含まれている場合、正規表現が一致しないことで一致させることができます。

1 aBiyukÙwa  <fs af='aBiyuk,unk,,,,,,'> 

私は、次の構文を使用して、Pythonのcodecsモジュールを使用してファイルからテキストを読んでいます:

codecs.open('/home/abcl/TokenOutput.wx', 'r', 'cp1252') 

任意のアイデアは、それについて移動する方法?

答えて

1

これは両方のマシンで動作しますが、テキストをコピーして貼り付けているため、一部の目に見えない翻訳が行われている可能性があります。ユニコードフラグを設定しようとしましたか?

'(?u)1\s*(\w*)\s*(<.*$)' 

または

re.match(r, t, flags=re.U).group() 
のように
0

フラグにre.Uを指定していません。

関連する問題