首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javascript仅在另一个模式不匹配时才排除模式

javascript仅在另一个模式不匹配时才排除模式
EN

Stack Overflow用户
提问于 2017-06-02 02:49:12
回答 2查看 117关注 0票数 3

为了排除带有wag[.|on]ut[i|e]的句子,需要使用正则表达式,但前提是不存在sed[.|an],并且允许所有其他句子。有什么建议吗?

即。不包括只有马车或降落伞的火柴。

我尝试过/[^wag[on|.]]/ig.test(sentence),但是这种方式不允许排斥。我需要选择“是”的句子仅如下所示。

给出下列句子:

这辆轿车开得很快-是的

其他的。太快了--是的

这辆马车开得很慢-不

其他的摇摆。也是慢的<--不

降落伞很慢--不

其他的uti也是慢的--不

摇摆不定。马车比苏醒慢。或者轿车--是的

uti或ute比sed慢。或者轿车--是的

都在摇摆。马车、uti和uti慢-不

没有什么是快的或慢的-是的

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-06-02 04:05:03

这很管用

代码语言:javascript
复制
function isMatch(input) {
   var regno = /(wag[.|on]|ut[i|e])/gi;
   var regyes = /sed[.|an]/gi;
   return !regno.test(input) || regyes.test(input);
}

结果:

票数 2
EN

Stack Overflow用户

发布于 2017-06-02 05:21:26

代码语言:javascript
复制
/^(?:.*sed[.|an].*|(?:(?!wag[.|on]|ut[i|e]).)*)$/

您可以使用(?!)来匹配不匹配某些模式的字符串。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44320030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档