-2

我如何从正则表达式中提取它:

mymatch[ someother char ]

我想要的是mymatch后跟 a[但我不希望匹配中的方括号。

我坚持这一点,但它也得到方括号:

\b.*?\[

更一般地说,我如何从匹配中排除模式的某些部分?

例如,在这里(abc2)mymatch我想要一个正则表达式仅在它之前返回我的匹配项(abc2)

4

1 回答 1

1

在这你需要使用前瞻后向,在第一个使用积极的前瞻

\w+(?=\[)

?=[ :表示后跟“[”,而不是在匹配项中捕获

在第二个例子中使用正面的lookbehind

(?<=\(abc2\))\w+

(?<=(abc2)) :意思是由“(abc2)”领导,而不是在比赛中追赶

有关前瞻和后瞻的更多信息

于 2020-11-03T16:26:23.993 回答