Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
304 views
in Technique[技术] by (71.8m points)

javascript - 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.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

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]
);

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...