Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
315 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 Reply

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

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...