首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >re.sub将十六进制替换为字符串

re.sub将十六进制替换为字符串
EN

Stack Overflow用户
提问于 2018-06-03 00:07:33
回答 1查看 452关注 0票数 0

我有一个文件,其中包含我想要转换为字符串的十六进制数字:

代码语言:javascript
复制
'\x73\x63\x6f\x72\x65\x73': '\x4c\x6f\x72\x65\x6d\x20\x69\x70\x73\x75\x6d',
'Status', ['\x75\x70\x64\x61\x74\x65']  

但是当使用re.sub将每个出现的十六进制转义数替换为其ascii表示时,它似乎没有找到十六进制数的第一个位置。

我尝试过使用原始字符串,但它没有改变任何事情。我还是不能换掉它们。

代码语言:javascript
复制
import re, binascii
with open('hex.txt', 'r') as f:
    file = f.read()
    hexList = re.findall(r"'([\\x\w+]*)'", file)

    for item in hexList:
        file = re.sub(r"('{}')".format(item), str(binascii.unhexlify(item.replace('\\x', ''))), file)
        #file = re.sub("('"+item+"')".format(item), str(binascii.unhexlify(item.replace('\\x', ''))), file)
    print(file)```
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50658758

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档