【发布时间】:2017-09-14 00:40:06
【问题描述】:
正则表达式/^[a-z]*$/ 是一种快速匹配范围内所有字符的方法。
但是如何从该范围中删除一组字符?
例如,排除e,o,u 的情况下,哪个正则表达式与a-z 匹配?
当然,我可以手动放置多个范围,但我想知道是否有更好的方法?
编辑。 similar but more broad question 不是指 JavaScript。但是,JavaScript 对正则表达式有特殊处理,例如参见 here。其他语言的许多表达式在 JavaScript 中不起作用,所以我觉得单独的更具体的 JS 问题值得一些优点。
【问题讨论】:
-
/^(?:(?![oeu])[a-z])*$/我相信,根据那里的答案...负前瞻和字符类,与非捕获组组合在一起,重复零次或多次。 -
@T.J.Crowder 谢谢!很难从所有这些答案中挖掘出来,其中许多在 JS 中不起作用。
标签: javascript node.js regex character string-matching