如何编写匹配含指定字符且排除其他字符的单词的正则表达式
正则表达式解决方案
正确的正则写法如下:
^(?=.*a)[^bc]+$
规则说明
(?=.*a)是正向肯定预查,确保整个字符串中至少包含1个字符a,不会消耗匹配位置,不影响后续排除规则的执行[^bc]+匹配1个及以上不属于b、c的字符^和$分别锚定字符串的开头和结尾,保证校验覆盖整个单词
匹配效果示例
- 可匹配:
a、apple、ant、data - 不可匹配:
- 不含
a的字符串:test、xyz - 包含
b/c的字符串:ab、cat、bus
- 不含
内容的提问来源于stack exchange,提问作者taiga
相关产品推荐
相关产品推荐

