let re = /((xx)1)/i; let str = "xx"; console.log(re.test(str));
最外层加了个括号为什么结果就变成true了?
可能是,你的外层括号导致了正则解析器认为造成了递归回环逻辑问题,外括号可能与1形成冲突,毕竟1是倒回去重复第几个括号里的正则
/((xx))/ /(xx)1/
以上两种正则都没有问题
可能是解析器最终处理成/(xx)/,1起了冲突,就忽略了1
2.1m questions
2.1m answers
60 comments
57.0k users