您能否匹配出现在模式之后的文本中的模式,例如:
ssasabafra
匹配b之后的所有a?我试过像这样使用后面的样子:
(?<=b)[a]+
但它只匹配第一个a
有没有办法匹配之后的所有事件b
?
您能否匹配出现在模式之后的文本中的模式,例如:
ssasabafra
匹配b之后的所有a?我试过像这样使用后面的样子:
(?<=b)[a]+
但它只匹配第一个a
有没有办法匹配之后的所有事件b
?
如果您使用的表达式引擎允许在后向表达式中重复,那么如何:
(?<=b.*?)a
这在后面查找 ab
后跟任意数量的字符,并匹配a
然而,对于大多数正则表达式引擎,我认为这是不可能的。但是,您可以做的是拆分字符串b
,将第二部分与 匹配/a/
,然后再将两个字符串与b
.
这个怎么样:
a(?=[^b]*$)
但是,这并不能确保b
在a
. 我猜你想匹配所有a
后面没有包含的子字符串b
。
在RegexPal上查看演示
如果您想确保在b
之前必须有某个地方a
,那么您可能应该在您的特定编程语言中使用字符串操作函数。