首先,我不确定我要找的是 tregex ,但我会尽力解释我的问题。
我想要做的是,假设我有一个如下所示的自定义语法。
VP -> V + NP + PP
NP -> NN | PRP
PP -> IN + NP
V 是所有动词,意味着它的过去或现在等无关紧要
+ 表示concat
| 表示或
我有一串像下面这样的postags。
VBZ PRP IN NN
我想要做的是检查上面的语法是否有效。我希望使用Stanford NLP API来实现这一点,因为我的项目使用它。我知道我可以使用像 jacc 这样的编译器,但我想坚持使用Stanford NLP。
感谢。
答案 0 :(得分:1)
我担心Tregex不能做你想做的事。它是树结构上的模式匹配器。它不是解析器。从理论上讲,Stanford Parser可以用任何语法进行解析,但在实践中,不支持手写语法。所以你最好使用像jacc,JavaCC或ANTLR这样的工具。