import re
regex = re.compile(r'(^| )=([^\s]*[^\s])=(\B|[\u4e00-\u9fa5])')
text = '=1= = 2= =3 == = 4 = =5=, =6=* =7=三 =8=a =9=='
print(regex.findall(text))
需求: 两个等号之间不能以空格开头或结尾,第一个等号之前只能是空格或者每一行的开始位置,第二个等号之后可以是标点或者汉字或者每一行结束,不能是数字字母下划线
想问一下为什么匹配不到 3 =
期望输出
[('', '1', ''),(' ','3 =','') (' ', '5', ''), (' ', '6', ''), (' ', '7', '三'), (' ', '9=', '')]
实际输出
[('', '1', ''), (' ', '5', ''), (' ', '6', ''), (' ', '7', '三'), (' ', '9=', '')]
请教一下这该怎么修改?