如何在解析树中找到节点的路径

时间:2018-12-24 15:59:11

标签: java nlp stanford-nlp

我使用了斯坦福解析器,并得到了一个句子的解析树。如何获取每个节点的路径?

例如,这是我的解析器树:

(根目录

(S

(NP (PRP He))
(VP (VBD entered)
  (NP (DT the) (NN door)))
(. .)))

当我输入VP时,程序会给我VP节点的路径:ROOT-> S-> VP; 当我输入PRP时,程序会给我PRP节点的路径:ROOT-> S-> NP-> PRP。

我对这个问题一无所知。需要您的帮助!预先感谢!

1 个答案:

答案 0 :(得分:0)

我终于找到了解决方案。

我首先使用DFS到达每个节点,然后使用一种称为

的方法
  

pathNodeToNode(node1,node2)

。此方法来自StanfordNLP tree class。这是方法链接https://nlp.stanford.edu/nlp/javadoc/javanlp-3.5.0/edu/stanford/nlp/trees/Tree.html

希望这可能对其他人有所帮助。