繁体   English   中英

试图以“\\ x0a”格式查找与Hex不相似的字符

[英]Trying to find characters that do not resemble Hex in the format '\x0a'

我正在解析包含文件幻数的字符串,但格式不一致。 一些模式是十六进制格式为'\\ x0a'(其中字符串包含转义字符,因此我显然需要搜索两者),其他字符是直接ASCII字符,其余字符介于两者之间。

我希望使用正则表达式来查找字符串中不是十六进制的字符。 我尝试使用反转标志搜索Hex值。

(?!\\\\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=''>

如果没有获得积极的结果并自己反转,我不知道该如何继续。

谢谢!

您可以使用以下内容替换十六进制值: re.sub(r'\\\\x[0-9 af]{2}','', your_line)并使用剩余的 - 非十六进制字符

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM