背景
我希望能够在Delphi应用程序中解析Javascript源代码。我需要能够识别源中的变量和函数,以便通过以后的代码更改代码。我知道我可能需要为此目的使用词法分析器,但使用我找到的词法分析器(Dyaclexx)并没有太多运气。
问题
是否有合适的免费软件或开源delphi解析器/词法分析器已经有Javascript令牌集,或者可以轻松修改为此目的而不会有太多麻烦?
如果没有这样的工具可用,那么学习为此目的编写自己的词法分析器的最佳方法是什么?
感谢您
答案 0 :(得分:4)
对于词法分析器,您可以看到Javascript荧光笔的Synedit's源代码。 Synedit上下文中的荧光笔是一个带有特殊钩子的词法分析器,可以为编辑器组件提供高亮显示。修剪这些钩子并获得普通词法分析器是一项微不足道的工作。
Synedit编辑器也可以在学习如何构建词法分析器时派上用场,因为这将有助于实时地对你的词法分析器进行视觉测试。您可以查看演示或在邮件列表中询问更多信息。
答案 1 :(得分:0)
我认为您应该使用应该查看GoldParser(http://www.devincook.com/goldparser)来在Delphi代码中生成完整的JS解析器。 GoldParser虽然是免费软件。