0

我正在使用Lark来解析语法:

start: np vp
pp: preposition+ np
sbar: sentence | conjunction sentence
np: terminalnounphrase | np pp | np sbar | QUOTE WORD* QUOTE
terminalnounphrase: determiner? adjp? noun
vp: advp? verb+ advp? | vp np | vp pp
adjp: adjective+
advp: adverb+
%ignore " "
%import .ambiguous_word (determiner, noun, verb, pronoun, conjunction, adjective, adverb, preposition)

首先,有没有一种方法可以鼓励 Lark 以 BFS 方式解析,更喜欢浅解析树而不是深解析树?

其次,有一种方法可以限制语法递归的最大深度。显然,我可以用正则表达式指定一个标记的数量,token{from, to}但我可以用递归做类似的事情,说一堆 np 只能是 x 长吗?

4

0 回答 0