如何在没有选区解析树的String / Text
的情况下提取名词短语POS tags
。
我能够在不解析注释的情况下提取名词短语,但无法找到仅提取该名词短语的文本的方法。 例如:
String some_sentence = "The dog ran after the intruding bigger dog";
parse Tree :**(ROOT (S (NP (DT The) (NN dog)) (VP (VBD ran) (PP (IN after) (NP (DT the) (JJ intruding) (JJR bigger) (NN dog))))))
我可以从这个解析树(NP (DT The) (NN dog))" and "(NP (DT the) (JJ intruding)
中提取以下名词短语,但我只需要这些名词短语的文本为 the dog"和"闯入。
我尝试使用Tree类的yieldWords()
方法来构造短语,但它并不保证源字符串的精确复制,因为可能存在空格,符号等问题。
有没有办法从Parse树中获取确切的源字符串??
答案 0 :(得分:1)
你走在正确的轨道上。使用Tree.yieldWords
提取产量词列表后,您可以使用Sentence.listToOriginalTextString
生成原始句子字符串。
我相信此方法是CoreNLP 3.5.2中的新方法,因此请确保安装了最新版本。