一切看起来都很棒,但在python上,并非如此:
import re
text = "HEADER_CG_HANDSHAKE\t\t\t\t= 0xff,\n"
print(re.findall(r"[^\/](HEADER_.*)\s*?\t*?=\s*\t*((\d|[x0-9A-Fa-f])*)", text))
输出是一个空列表,为什么会这样?
答案 0 :(得分:0)
这应该有效:
print(re.findall(r"(HEADER_.*)\s*?\t*?=\s*\t*((\d|[x0-9A-Fa-f])*)", text))
[('HEADER_CG_HANDSHAKE\t\t\t\t', '0xff', 'f')]
您的正则表达式在开始时有额外的[^\/]
。
btw你的Python
输入与regex101上的输入不同,因为Python代码中缺少前导空格。