匹配除少数字符之外的 ASCII 字符

match ascii characters except few characters

本文关键字:字符 ASCII 数字      更新时间:2023-09-26

我有一个匹配所有 ascii 字符的正则表达式:

/^['x00-'x7F]*$/

现在我需要从此范围内排除以下字符:'" 。我该怎么做?

您可以对不允许的字符使用负预测:

/^((?!['"])['x00-'x7F])*$/

正则表达式演示

(?!['"])是负面的,不允许在输入中使用单引号/双引号。

您可以通过执行以下操作从范围中排除字符

/^(?!['.])['x00-'x7F]*$/

(?!['.]) 为前缀,以从正则表达式匹配中排除.

或在你的场景中

/^(?!['"])['x00-'x7F]*$/

编辑:

将正则表达式包装在大括号中以多次匹配它

/^((?!['"])['x00-'x7F])*$/

IMO迄今为止最简单的解决方案:

/^['x00-'x21'x23-'x26'x28-'x7F]*$/