1
テキストファイルはPythonを使用して文字 u2014、 u2017などでテキストファイルを修正するにはどうすればよいですか?
のような内容を持っている "長さ:クライアントごととしての\ u2019sが必要|の\ u2022材質:| \のu2022 CFC" 私は文字にこれを変換しようとしている
。読んで、これを文字に変換して元に戻す方法。一般的に
テキストファイルはPythonを使用して文字 u2014、 u2017などでテキストファイルを修正するにはどうすればよいですか?
のような内容を持っている "長さ:クライアントごととしての\ u2019sが必要|の\ u2022材質:| \のu2022 CFC" 私は文字にこれを変換しようとしている
。読んで、これを文字に変換して元に戻す方法。一般的に
、一般的なアプローチだが、具体的には、このようなこのテキストはマルタインpointed outとして、どこから来たのかなどの詳細に依存
uni_chr_re = re.compile(r'\\u([a-fA-F0-9]{4})')
lines = []
with open(filename) as f:
for line in f:
lines.append(uni_chr_re.sub(lambda m: unichr(int(m.group(1), 16)), line))
の線に沿って何か。
これらの '\ uXXXX'コードは、Unicode文字のPythonエスケープリテラルです。この "テキストファイル"はどこから来たのですか? Pythonの 'unicode'オブジェクトの' repr() 'を実際に正しくエンコードすることなくダンプすることによって書かれたようです。 – Iguananaut
これはJSONやその他のソースから供給されましたか?これは重要です。異なるソースは、Unicodeコードポイントを異なる方法でエンコードします。 JSON '\ uhhhh'コードポイントは実際にはUTF-16値です。つまり、BMP以外のポイントには** 2つのエスケープシーケンスが必要です。 –