首页 > 解决方案 > 正则表达式模式允许所有 ASCII 字符值,但有一些例外

问题描述

我想编写允许所有 ASCII 字符的正则表达式,但以下 ASCII 字符除外,这些字符将受到限制

: ~*\^_`?<>

我该如何解决这个问题?

标签: javascriptregex

解决方案


您可以使用该字符集[\u0000-\u007f]来匹配所有 ASCII 字符,并将其与要在其前面的另一个字符集中排除的字符的负前瞻结合起来:

^(?:(?![: ~*\\^_`?<>)])[\u0000-\u007f])*$

可以将这些组合成一个单一的正字符集,但它会更难理解。


推荐阅读