我写了一个程序来读取Windows DNS调试日志,但里面总是有一些有趣的字符域字段。python替换Unicode字符
下面是例子之一:
(13)\xc2\xb5\xc2\xb1\xc2\xbe\xc3\xa2p\xc3\xb4\xc2\x8d(5)example(3)com(0)'
我要全部更换为\x..
与?
我明确地键入\ XC2如下作品
line = '(13)\xc2\xb5\xc2\xb1\xc2\xbe\xc3\xa2p\xc3\xb4\xc2\x8d(5)example(3)com(0)'
re.sub('\\\xc2', '?', line)
result: '(13)?\xb5?\xb1?\xbe\xc3\xa2p\xc3\xb4?\x8d(5)example(3)com(0)'
但它不是如果我写作如下:
re.sub('\\\x..', '?', line)
如何写一个正则表达式来替换它们?
纯粹作为读者的exersize - 're.sub('[\ x80- \ xff]','?',line)'。但请不要那么做,@ wim的答案就是你应该去做的。 –