在XLSX文档中解释特殊字符

时间:2011-07-15 17:13:47

标签: python unicode xlsx

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

1 个答案:

答案 0 :(得分: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!"