【发布时间】:2021-06-28 22:12:27
【问题描述】:
我需要一个正则表达式来找到两个元音之间的两个辅音,但这些辅音不应该在一个列表中:
例如,我的黑名单是 (br|bl|cn|cr)
between = It's good because 'tw' is not in the list.
abroad = it's wrong because 'br' is in the black-list.
但我只需要最后两个辅音元音:
between = I only need 'we' no 'et'.
我有以下正则表达式,但我不知道如何检查捕获的辅音是否在列表中。
"[aeiou]([^aeiou]{2})[aeiou]"
我用“([^aeiou]{2})”捕获了辅音,但是如何检查捕获的“\1”是否在黑名单中?
【问题讨论】:
-
看来你需要
^(?!.*(?:br|bl|cn|cr)).*[b-df-hj-np-tv-z]{2}。 -
regex引擎中应该有negative-lookahead或negative-lookbehind非捕获组。
-
@Aaron 你的回答也一样...你能举个小例子吗?
-
嗨@jhnc,你的回答也一样。你是对的,我的错误......我做出了改变。
标签: regex