我有以下字符串:
This$#is% Matrix# %!
我试图抓住字母数字字符之间出现特殊符号/空格的子字符串。例如,我的目标是找到这两组子字符串:This$#is
(特殊符号#,$,介于'This'和'is'之间)和is% Matrix
(特殊符号%和'is'和'Matrix'之间的空格)。你知道吗
我的正则表达式findall如下:
match = re.findall(r'([\w]{1,})([\s\W]{1,})([\w]{1,})', temp)
它返回给我:[('This', '$#', 'is')]
,但不是第二部分('is% Matrix')
。我做错什么了吗?你知道吗
如果我将字符串改为'is%Matrix'并应用相同的regex模式,我会得到:[('is', '% ', 'Matrix')]
。你知道吗
您可以对希望重叠匹配的部分使用正向前瞻:
match
变成:演示:https://regex101.com/r/2PJmlX/1
相关问题 更多 >
编程相关推荐