SaidbakR
SaidbakR

Reputation: 13544

FireFox invalid regex group

I have the following regex that works fine in but it does not work in FireFox generating syntax error Invalid Regex Group:

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

I have tried to escape : using /(?<=\:)/iu but it gives the same error. I could not able to figure out the cause of this problem.

Upvotes: 21

Views: 14295

Answers (1)

Wiktor Stribiżew
Wiktor Stribiżew

Reputation: 627468

As you can see here, as of now, lookbehinds are not supported in every browser/JavaScript environment. Thus, you can't actually rely on that feature if you want to support all browsers including legacy versions.

Since you just want to match 0+ chars other than : and the first : in the string, you may use

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

See the regex demo.

JS:

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

Upvotes: 21

Related Questions