BUG
工作时时写了一个正则表达式匹配字符串首尾没有被转移的空格,测试时发现在IE浏览器中会报错,在Chrome中正常。正则表达式如下:
const spaceReg = /(^(\s+))|((?<!\\)(\s+)$)/g;
查资料后发现是因为JavaScript语言的正则表达式不能支持所有的正则表达式。
支持的有:
名称 | 字符 |
---|---|
正向肯定预查( look ahead positive assert ) | (?=pattern) |
正向否定预查(look ahead negative assert) | (?!pattern) |
… | … |
不支持的有:
名称 | 字符 |
---|---|
反向肯定预查( look behind positive assert ) | (?<=pattern) |
反向否定预查( look behind negative assert) |