我得到了一个文件,其中包含纯文本和一些unicode文本的表示,比如
STRING_LITERAL2 = '"' ( ([^\x22\x5C\xA\xD]) | '\' [tbnrf\"'] )* '"'
我需要将这些表示解释为实际的文字,并在正则表达式中使用它们。问题很简单,如果我明白的话
^{pr2}$而python的import.re
包无法解释这些文本。在
我可以使用re.sub("\\\\x",...)
找到具体的表示形式,但是如果我想替换它们re.sub("\\\\x","\\x".encode().decode('unicode_escape'), str_lit2)
-要说这些是真实的文字,我会得到以下错误:
UnicodeDecodeError: 'unicodeescape' codec can't decode bytes in position 0-1: truncated \xXX escape
那么,如何将unicode文本的这些字符串代表转换为实际的文本呢?当然只有Python3,因为我需要用这个。在
你好 梅尔达莫斯
您包含的所有十六进制字符都属于US_ASCII平面,因为它们都没有最有效的位集。例如,
\x22
相当于Unicode/ASCII引号"
。类似地,\5c
相当于Unicode/ASCII\
。在没有你进一步的澄清,我认为你是引用了正常的ASCII码位。在
相关问题 更多 >
编程相关推荐