[英]Exclude one regular expression from another regular expression
在JavaScript中,是否可以排除一个正则表达式的匹配(通过编写另一个正则表达式)? 例如,我想排除正则表达式的所有匹配项
/(cl|g|cr|d)(own)/
(匹配“小丑”,“礼服”,“皇冠”和“向下”)
从正则表达式
/(c|g|cl|cr|d)(o(w|u))(n|d)/
(匹配“冠”,“小丑”,“长袍”,“土块”等)。
组合正则表达式应匹配与第一个正则表达式匹配的所有字符串,但不匹配与第二个正则表达式匹配的字符串。
好吧,你可以这样写:
/(?:cl|g|cr|d)o(?:un|wd)|co[wu][nd]/
但更一般地说,你可以使用负向前瞻:
/(?!(?:cl|g|cr|d)own)(?:c|g|cl|cr|d)o[wu][nd]/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.