我开始了解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
is a biword
(我可以将其视为搜索索引中的一个词)
所以我想用wordNet来检查(teeshirt)是否在wordNet中
if True
那么它是一个双词并且有一个同义词,例如 jersey, T-shirt, Teeshirt
if false
那么它不是
有什么方法吗Jaws
检查这个词是否在wordnet中?
或者我应该看看这个词是否有同义词,那么默认情况下它就在其中(作为我想到的解决方案)
由于没有人回答问题,我找到了解决问题的方法
我将发布答案给未来遇到同样问题的访客
我希望这会有用:)
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
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)