2011-07-16 52 views

回答

0

你一定已經給了它一個句子,所以我不確定你爲什麼不知道單詞在它的位置。

如果你想要了解爲什麼你有多個依賴項提到同一個單詞,那麼這是因爲單詞可以從一個依賴關係傳播到另一個。

+0

@Miles ..基本上我想做出一些圖案爲概念的AQUISITION然後瞭解這些概念本體......所以決策模式中,我還需要在一個句子中的單詞地方...請幫助我 – Qasim

+0

@Miles ....我只想複合名詞(可以B到3或4個單詞),所以爲什麼我需要在句子中的一個單詞的地方編程。 .. – Qasim

0

你做了類似下面的事情。 wordIndex是你想要的。

import edu.stanford.nlp.ling.CoreAnnotations.IndexAnnotation; 

... 

GrammaticalStructure gs = gsf.newGrammaticalStructure(parse); 
List<TypedDependency> tdl = gs.typedDependenciesCCprocessed(); 
TypedDependency td = tdl.get(0); 
CoreLabel cl = td.dep().label(); 
int wordIndex = cl.get(IndexAnnotation.class); 
1

如果你想獲得一個特定的詞的索引在一個句子,你可以選擇直接記號化,並得到地方作爲的indexOf(令牌)+1
TypedDependency格式>>> abbreviated_form_reln(州長, (love-2,I-1)
如果您想要訪問TypedDependency(或任何其他屬性)中特定單詞的索引,只需使用API​​
例如:
說,TypedDepency td表示nsubj

td.gov(); //gives the governer (of type TreeGraphNode) 
    td.dep(); //gives the dependent (") 
    td.reln(); //gives the relation (of type GrammaticalRelation) 

然後,您可以使用TreeGraphNode的方法檢索更多細節
說,TreeGraphNode tgn = td.gov();

tgn.index(); //yields the required index (for the above case, 2) 

隨意指的javadoc http://nlp.stanford.edu/nlp/javadoc/javanlp/

相關問題