如何从正则表达式中提取:
mymatch[ someother char ]
当后面跟着[
时,我想要的是mymatch
,但我不想要匹配中的方括号。
我被卡住了,但它也有方括号:
b.*?[
更一般地说,我如何从匹配中排除模式的某些部分
例如,这里的(abc2)mymatch
,我想要一个正则表达式,仅当它被(abc2)
预处理时才返回我的匹配。
在这个过程中,您需要使用前瞻和后向,在第一个过程中使用positive前瞻:
w+(?=[)
=[:mean后跟"["并且在匹配中不捕获
在第二个例子中使用正向查找:
(?<=(abc2))w+
(?<=(abc2((:由";(abc2(";并且没有赶上匹配
有关先行和后向的更多信息