首页 > 解决方案 > 如何忽略 JavaScript 中引号之间的文本?

问题描述

我使用正则表达式在 JavaScript 中创建自己的语言。您如何建议忽略字符串变量中的文本?

例如,我的代码:

if (flag) {
    print("Yes")
} elif (!flag) {
    print("Elif is worked")
}

将转换为

if (flag) {
    console.log("Yes")
} else if (!flag) {
    console.log("else if is worked")
}

我想忽略引号中的文本:

if (flag) {
    console.log("Yes")
} else if (!flag) {
    console.log("elif is worked")
}

标签: javascriptprogramming-languagesregular-languagetranspiler

解决方案


不想气馁:不要使用正则表达式,因为问题域太复杂而无法正常工作。相反,实现一个标记器和一个解析器。但总的来说,这个话题太宽泛,无法在这里回答。

这里有一个在线教程,展示了如何在 javascript 中实现编程语言。


推荐阅读