parsing - VBScript 部分解析器

标签 parsing vbscript antlr gold-parser

我正在尝试创建一个 VBScript 解析器。我想知道最好的方法是什么。我研究过、研究过。最流行的方法似乎是使用 Gold Parser 或 ANTLR 之类的东西。

我想要实现的功能是动态检查 VBScript 中的语法错误。我不想每次更改某些文本时都编译整个 VBS。我该如何去做呢?我尝试使用 Gold Parser,但我认为没有增量方法可以通过它进行解析,例如部分解析树...关于如何为这种情况实现部分解析树有什么想法吗?

我已经通过 GOLD Parser 实现了 VBscript 解析。然而它仍然不是一个部分解析器,在每次文本更改后解析整个脚本。有没有办法构建这样的东西。

谢谢

最佳答案

如果你确实想进行增量解析,请考虑 this paper蒂姆·瓦格纳着。

保留现有的解析树,在编辑点打乱字符串片段的混合物,并且解析树代表源文本中未更改的部分,并将字符串重新集成到解析树集中,这是一个绝妙的方案。 。这是使用增量 GLR 解析器完成的。

实现起来并不容易;我只做了 GLR 部分,从来没有抽出时间来处理增量部分。 GLR 部分的麻烦是值得的。

有很多关于增量解析的论文。这是非常好的之一。

关于parsing - VBScript 部分解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5192774/

相关文章:

dom - 创建 HTML DOM 对象以访问 html 表单中的 HTML 对象

parsing - Antlr 解析器运算符优先级

c# - 如何从 javascript 源代码中标记/解析字符串文字

vbscript - 在 VBScript 中读取音乐文件长度

python - 用 Beautiful Soup 解析 Html 返回空列表

vba - VBS InStr 的问题 - 使用嵌套的 InStr 作为可选的开始参数

java - 十六进制和操作码之间的 ANTLR 歧义

parsing - ANTLR 有帮助吗?不同的建议?

c - 在c中解析.conf文件

mysql - 在mysql中使用子字符串解析文本