1
私はいくつかのテキストデータを持つファイルを持っています。このファイルから私の興味深い文字列をすべて取得する必要があります。すべての興味深い文字列は、 "\ x01 \ x00 \ x00 \ x00"と "\ x00"で囲まれています。私はこれらの文字列を見つけるためにfolowing正規表現を使用しようとします:ユニコード文字列の正規表現
(\x01\x00\x00\x00[\u0000-\uFFFF]+\x00)
しかし正しく動作しません。私は間違って何をしていますか?完全なコードはここにある:
# -*- coding: utf-8 -*-
import re
file = open(r"H:\1705\test.adb")
temp = file.readlines()
resString = ""
for line in temp:
resString += line
p = re.compile(ur"(\x01\x00\x00\x00[\u0000-\uFFFF]+\x00)", re.UNICODE)
res = p.finditer(resString)
for match in res:
print match.group()[0].decode("cp1251")
ユニコードの場合、それはどのエンコードですか?なぜファイルを開くときにそのエンコーディングからデコードしていないのですか?なぜあなたは 'cp1251'からデコードしていますか? – beerbajay