2

我正在使用 xlsx Python 库来读取 XLSX 文档,但某些列数据包含特殊字符,例如_x000D_. 如何将其转换为原始形式?

4

1 回答 1

4

如果_x000D_应该用十六进制代码点表示一个 unicode 字符,则可以使用正则表达式来查找它们,并使用回调函数将它们转换为适当的值。

import re

input_string = "H_x00E9_llo W_x00D8_rld!"

def parse_escaped_character_match(match):
    return unichr(int(match.group(1), 16))

print re.sub("_x([0-9A-F]{4})_", parse_escaped_character_match, input_string)
# prints "Héllo WØrld!"
于 2011-07-15T22:24:56.973 回答