我有以下正则表达式在Chrome中运行正常,但它在FireFox中无法生成语法错误Invalid Regex Group
:
bld = txt.split(/(?<=:)/iu,1);
我尝试使用:
转义/(?<=\:)/iu
,但它会出现同样的错误。我无法弄清楚这个问题的原因。
答案 0 :(得分:8)
正如您所见here,截至目前,只有Chrome最新版本支持lookbehinds。因此,如果您想支持所有主流浏览器/较旧的Chrome版本,则无法真正依赖该功能。
由于您只想匹配除:
以外的0 +字符以及字符串中的第一个:
,您可以使用
s.match(/^[^:]*:/)
请参阅regex demo。
JS:
console.log(
'Error 5: the lorem lipsum: in...'.match(/^[^:]*:/)[0]
);
&#13;