Python 2.7とPython 3でエスケープ文字を削除するにはどうすればよいですか?文字列からエスケープ文字を削除する
例:
a = "\u00E7a\u00E7a\u00E7a=http\://\u00E1\u00E9\u00ED\u00F3\u00FA\u00E7/()\=)(){[]}"
decoded = a.decode('unicode_escape')
print decoded
結果:
çaçaça=http\://áéíóúç/()\=)(){[]}
期待される結果
çaçaça=http://áéíóúç/()=)(){[]}
EDIT:不要なdownvotesを避けるために。 .replaceは、他のチームのレガシーソリューション(ポルトガル語の文字と正規表現を含む参照データを持つdbテーブル)によってこの問題が発生したため、主な焦点ではありません。あなたは、単純なstr.replace
>>> print decoded.replace('\\', '')
çaçaça=http://áéíóúç/()=)(){[]}
の残り\
を探している
これは、参照データであるので、私は、.replaceを使用しないようにしようとしている、時にはそれが必要です。エスケープ文字ではなく、文字列に属しているからです。 –
@ ThalesPereiraバックスラッシュがエスケープシーケンスの一部である場合、置換されません。 –
@ ThalesPereira試してください: 'v = '\ xff'; v.replace( '\\'、 '')何が起こるかを見てください... –