这两个正则有啥区别,为什么第一个会匹配到 @ 和 = ,而将 \\ 后置后则正常?-灵析社区

PunkMaccccc

你这个发出来的应该经过转义了,不是原本的正则吧,用我看到的上面是false,下面报错 ![image.png](https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241030/b18ed3dbc5ff1995996bcf9795208037.png) 不过可以猜到,主要原因在于`-`是字符范围,比如`0-9`表示`0123456789`9个数,`a-z`表示`abcd....z`。他们在匹配的时候是根据字符在ASCII码中的大小进行匹配的,比如`'@'.charCodeAt()`是64,`','.charCodeAt()`是44,`'/'.charCodeAt()`是47,64不在44到47内,就匹配不上 ![image.png](https://wmlx-new-image.oss-cn-shanghai.aliyuncs.com/images/20241030/83db2df1cbb53a78e8aa9a47a56eb78d.png)

阅读量:1

点赞量:0

问AI