我开始了解wordNet
,直到知道我找到了synonymous
的特定字词
现在我有一个文件,我想使用n-gram
例如
String s="I like to wear tee shirt";
使用n-gram
后将是
I
like
to
wear
tee
shirt
.
.
.
wear tee
tee shirt
等等
然后我想知道tee shirt
是biword
(我可以将其视为搜索索引中的一个单词)
所以我想用wordNet来检查wordNet中是否(T恤)
if True
那么这是一个双字谜,并且有一个代名词,例如球衣,T恤,T恤
if false
然后它不是
在Jaws
中是否有任何方法检查wordnet中的这个单词是否?
或者我应该看看这个词是否有同义词,然后它默认为它(作为我想到的解决方案)
答案 0 :(得分:2)
我找到了解决问题的方法,因为没有人回答这个问题 我将发布具有相同问题的未来访问者的答案 我希望这会有用:)
public static boolean is_Missing_WordNet(String r,String posTag){
// System.out.println("inside is_missing_Wordnet "+r);
boolean flag=true;
configureJWordNet();
Dictionary dictionary = Dictionary.getInstance();
IndexWord word;
try {
if(posTag.equals("VBG"))//Verb
{ word = dictionary.lookupIndexWord(POS.VERB, r);}
else {word = dictionary.lookupIndexWord(POS.NOUN, r);}
Synset[] senses = word.getSenses();
if(senses!=null && senses.length>0){
if(senses[0].toString().toLowerCase().contains(r)|| senses[0].toString().contains(r.replace(" ","_")))
{ System.out.println("sense;;;; "+senses[0].toString());flag=false;}
}
else{System.out.println("wordnet has no sense of "+r );return true; }
}
catch(NullPointerException ex){return true;}
catch (JWNLException ex) {return true;
}
return flag;
}
如果WordNet词典中缺少
,则此函数返回true