首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何对禁用单词的组合执行RegEx

如何对禁用单词的组合执行RegEx
EN

Stack Overflow用户
提问于 2017-02-09 22:07:08
回答 1查看 107关注 0票数 1

我是一名退休教师,已经开发出一种使用正则表达式自动批改简答科学问题的方法。我使用或多或少需要关键字(A、B、C等)并拒绝禁用单词(X)的标准方法:

代码语言:javascript
运行
复制
/^(?!.*?(X))(?=.*?\b(A))(?=.*?\b(B))(?=.*?\b(C)).{0,150}$/i

我希望能够拒绝基于2个禁词(X和Y)存在,但其中一个或另一个是接受的。

所以A B C;A B C X;A B C Y都会被接受,但A B C X Y会被拒绝。有没有可能做到这一点,并可能超过2个禁词?

顺便说一下,我不太了解正则表达式,我只是使用它!

EN

回答 1

Stack Overflow用户

发布于 2017-02-09 22:14:46

对于正则表达式的第一部分,您可以使用:

代码语言:javascript
运行
复制
(?!(?=.*X)(?=.*Y))

这意味着XY不能同时存在。

整个正则表达式:

代码语言:javascript
运行
复制
/^(?!(?=.*X)(?=.*Y))(?=.*\bA)(?=.*\bB)(?=.*\bC).{0,150}$/i
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42138829

复制
相关文章

相似问题

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