TL;DR:这个问题将在 TextX 的 3.0 版中得到修复。 解决方法是使用正则表达式匹配转义 ( \ ) 字符,例如\n 。 完整问题:使用 TextX,我正在解析一种本土标记语言,其中段落和换行符很重要。 我想我在尝试匹配新行时缺少基本理解:为什么"\n"和"\n\n"不起作用,而它们的 ...
TL;DR:这个问题将在 TextX 的 3.0 版中得到修复。 解决方法是使用正则表达式匹配转义 ( \ ) 字符,例如\n 。 完整问题:使用 TextX,我正在解析一种本土标记语言,其中段落和换行符很重要。 我想我在尝试匹配新行时缺少基本理解:为什么"\n"和"\n\n"不起作用,而它们的 ...
我的输入文本可能有这样一个简单的语句: 在我的语言中,我称其为代表一组具有各种属性的实例的名称。 它产生在这个例子中所有的飞机实例的instance_set。 我可以将括号中的过滤器应用于任何 instance_set: 它产生另一个可能减少的 instance_set。 由于它是一个实例 ...
这是一个简单的代码来理解: 在这里,在规则start中,它应该首先尝试捕获一行,如果它不起作用,则尝试捕获两行。 但是 Arpeggio 好像没有这个功能。 我得到arpeggio.NoMatch: Expected EOF at position (3, 1) => ' A *B '. ...
我有一个使用 Python Arpeggio package 的玩具 DSL 的 PEG 语法:from arpeggio.cleanpeg import ParserPEG grammar = """ root = block* EOF block = header ( ...