Azmisov
Azmisov

Reputation: 7269

How does JavaScript detect regular expressions?

I am writing a JS parser, and am wondering how to differentiate between a regular expression (/lookup/g) and simple division (bar/baz/g). What are the rules that JavaScript uses to identify regular expressions?

Upvotes: 11

Views: 553

Answers (1)

alex
alex

Reputation: 490657

You want to check out Section 7.8.5 in the ECMA spec (the annotated version is up-to-date currently, but always check the latest PDF from the ECMA).

Remember too that a JavaScript regex can not be empty. // is always the start of a single line comment. It's also worth mentioning that a semicolon must never be inserted before a regex literal.

Tangential, an empty JavaScript regex looks like /(?:)/.

Further discussion.

Upvotes: 11

Related Questions