我正在用javascript编写一个很小的javascript解析器。我处于令牌化级别。
我想知道如何识别正则表达式何时开始和结束。
例如,如果我问了同样的问题,即如何识别字符串开始和结束 答案是:
对于以双引号开头的字符串"我知道答案是字符串以双引号开头"并在遇到下一个双引号 " 时结束(除非前面有反斜杠 \)
任何帮助表示赞赏
ECMAScript 语言规范包含附录 A 中语言的完整语法(在 EBNF 中)。它太大了,无法在这里完整地复制,但正则表达式的生成是"RegularExpressionLiteral"。
"在 JavaScript 源代码中,正则表达式以 /pattern/modifiers 的形式编写,其中"pattern"是正则表达式本身,"修饰符"是一系列表示各种选项的字符。"修饰符"部分是可选的。JavaScript RegExp Object