Python 正在尝试查找格式为'\x0a';
我正在分析一个包含文件幻数的字符串,但格式不一致。一些模式是十六进制格式的“\x0a”(其中字符串包含一个转义字符,因此我显然需要搜索这两个字符),其他模式是直接ASCII字符,其他模式介于两者之间 我希望制作一个正则表达式来查找字符串中尚未使用十六进制的字符。我尝试使用反转标志搜索以下十六进制值Python 正在尝试查找格式为'\x0a';,python,regex,python-3.x,special-characters,Python,Regex,Python 3.x,Special Characters,我正在分析一个包含文件幻数的字符串,但格式不一致。一些模式是十六进制格式的“\x0a”(其中字符串包含一个转义字符,因此我显然需要搜索这两个字符),其他模式是直接ASCII字符,其他模式介于两者之间 我希望制作一个正则表达式来查找字符串中尚未使用十六进制的字符。我尝试使用反转标志搜索以下十六进制值 (?!\\\\x[0-9 a-f]{2}) 这并没有像预期的那样工作,因为它在完全匹配后的下一个字符中看到了x,并且与之匹配 >>> test = "\\x50K\\x03\\x0
(?!\\\\x[0-9 a-f]{2})
这并没有像预期的那样工作,因为它在完全匹配后的下一个字符中看到了x,并且与之匹配
>>> test = "\\x50K\\x03\\x04"
>>> re.search("(?!\\\\x[0-9 a-f]{2})" test)
<re.Match object; span(1, 1), match=''>
>>测试=“\\x50K\\x03\\x04”
>>>再搜索((?!\\\\x[0-9 a-f]{2})”测试)
没有得到积极的结果,我自己也不知道如何继续
谢谢 您可以用以下内容替换十六进制值:
re.sub(r'\\x[0-9 a-f]{2}','',您的行)
并使用剩余的非十六进制字符确定。根据你的建议,我提出了一个解决办法。不过,我不知道我是应该把它写进评论还是单独的回答中