正则表达式疑问

2016-11-14 17:38:33 +08:00
 explist
import re
a='abcabc'
b=re.search( r '(\d)abc(?(1)\d|abc)', a )
print(b)
#为何匹配失败? a='3abcabc'也是如此!
查了下(?(1)\d|abc) 的意思:如果编号为 1 的组匹配到字符,则需要匹配\d ,否则需要匹配 abc.
这里的 1 匹配到字符是指 c 后面匹配到字符呢还是 a 前面匹配到数字字符?
2428 次点击
所在节点    Python
21 条回复
Shawn2ex
2016-11-15 09:09:02 +08:00
https://jex.im/regulex 正则表达式可视化

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/320449

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX