我想找到一个带有 API 的字典,它允许我查找与通配符和特定词性(名词/动词/形容词...)匹配的单词,例如,给我一个以结尾的动词列表“化”。
我一直在看 Wordnet,但看起来它不支持通配符查找。
谢谢。
我想找到一个带有 API 的字典,它允许我查找与通配符和特定词性(名词/动词/形容词...)匹配的单词,例如,给我一个以结尾的动词列表“化”。
我一直在看 Wordnet,但看起来它不支持通配符查找。
谢谢。
您可以通过两个步骤来实现:
在我的示例中,我使用了一个非常小的单词列表:(Python)
import nltk
import re
#replace with English dictionary
#Using a small list of words for illustration
lst = ['swim', 'while', 'greet', 'prize', 'jeopardize', 'quartz', 'zebra']
def subset_words_by_wildcard(wordlist, pattern):
matchingwords = []
for w in wordlist:
if re.search(pattern, w):
matchingwords.append(w)
return matchingwords
def subset_words_by_pos(words, pos):
wpos = nltk.pos_tag(words)
for w,p in wpos:
if p == pos:
print w,p
if __name__ == '__main__':
pattern = r'ize$'
#target_pos = "NN"
target_pos = "VBP"
mlist = subset_words_by_wildcard(lst, pattern)
subset_words_by_pos(mlist, target_pos)
运行它会产生:
>>> jeopardize VBP
希望这可以帮助。