【发布时间】:2014-06-10 02:08:02
【问题描述】:
给定两个正则表达式 expr1 和 expr1,我们可以根据 if-then-else 构造等效地编写一个后向 (?<=expr1)expr2 吗?
例如,后面的(?<=expr1)expr2 是否等同于(expr1)(?(-1)expr2|expr3),其中expr3 是一些永远不可能匹配的正则表达式?
也就是说,这两个正则表达式的(?<=expr1)expr2 和(expr1)(?(-1)expr2|expr3) 描述的一样吗?
如果是,如何选择expr3,这样就永远无法匹配?
谢谢?
【问题讨论】:
-
@Dalorzo:
(?(-1)...|...)是一个条件,用于测试最后定义的捕获组是否存在。 -
什么书?顺便说一句,我给了你链接。 @Dalorzo
-
@Tim 查看问题其他部分的更新。
标签: regex