Javascript REGEX不以某些特殊字符结尾但返回true

时间:2017-08-05 12:50:13

标签: javascript regex

console.log(/^[0-9a-zA-Z]+[~!@#$%^&*_+-=]+$/.test("123456"));

我认为它应该返回false,因为字符串不以~!@#$%^&*_+-=字符结尾, 但它运行时返回true。 为什么返回true

1 个答案:

答案 0 :(得分:5)

问题是+-=是一个范围。如果您查看ASCII table,可以看到+-=包括+-./:;<=以及所有数字0 .. 9

您想要[~!@#$%^&*_+\-=](逃避-)。