今天在写一个正则表达式的时候,用了一个向后匹配 ?<= ,在 chrome 浏览器里是正常的,但是在 Safari 浏览器里报错 SyntaxError: Invalid regular expression: invalid group specifier name

特别注意

这种情况下, try catch 不会捕获到这个报错!!

Safari 目前还不支持这种写法,在 can i use 网站查到结果如下: ../images/2022-03-01-caniuse.png

网上搜到某种解决方案是,将正则表达式用 new RegExp 的方式创建,但并没有起效。目前解决方案只有修改正则表达式,在正则表达式里不使用向前 / 向后查询。