javascript - 如何忽略 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")
}
解决方案
不想气馁:不要使用正则表达式,因为问题域太复杂而无法正常工作。相反,实现一个标记器和一个解析器。但总的来说,这个话题太宽泛,无法在这里回答。
这里有一个在线教程,展示了如何在 javascript 中实现编程语言。
推荐阅读
- php - AJAX POST 请求在 Laravel 5.6 中不起作用
- python - 将训练好的 TensorFlow 模型转为固定操作
- drop-down-menu - 升级后 Kde 应用程序菜单在 ubuntu 18.04 中不起作用
- javascript - 处理 VueJS 范围
- android - Gnirehtet VPN 已创建,但没有互联网
- php - 为什么我会收到一条聪明的通知“尝试在第 348 行获取 ...\sysplugins\smarty_internal_templatecompilerbase.php 中非对象的属性”?
- c - 我应该将一个带参数的函数分配给带 void 的函数指针吗?
- javascript - TypeError:ws.onopen 不是 stomp-node.js 中的函数
- java - 如何使 GridLayout 对所有设备通用?
- angular-router - 如果什么都没有,有没有办法在角度路由器历史记录中添加一个页面?