web-dev-qa-db-ja.com

FireFoxの無効な正規表現グループ

Chromeでは正常に動作する次の正規表現がありますが、構文エラー_Invalid Regex Group_を生成するFireFoxでは動作しません。

_bld = txt.split(/(?<=:)/iu,1);
_

/(?<=\:)/iuを使用して_:_をエスケープしようとしましたが、同じエラーが発生します。この問題の原因を理解できませんでした。

10
SaidbakR

here を見るとわかるように、現在のところ、lookbehindsはChrome最新バージョンでのみサポートされています。すべての主要なブラウザをサポート/古いChromeバージョン。

:および文字列の最初の:以外の0個以上の文字に一致させたいだけなので、

s.match(/^[^:]*:/)

regex demo を参照してください。

JS:

console.log(
 'Error 5: the lorem lipsum: in...'.match(/^[^:]*:/)[0]
);
11