英文字典为txt或xml文件,支持同义词

有人可以指出我可以将英文字典下载为txt或xml文件。我正在为自己构建一个简单的应用程序,并寻找可以立即开始使用的东西,而不需要学习复杂的API。

对同义词的支持是非常好的,那就是更容易地检索特定单词的所有同义词。

如果字典将列出英国和美国的拼写错误的话,这将是绝对梦幻般的。

即使它是小字典(几千字)也没关系,我只需要一个小项目。

如果价格合理,我甚至愿意买一个字典,而且字典很容易使用 – 简单的XML会很棒。

任何方向

WordNet是你想要的它很大,包含十万个条目,它是免费的。

但是,它并不存储为XML。要访问数据,您将需要使用现有的WordNet APIs之一选择您的语言。

使用API​​通常很简单,所以我不认为你不必担心“学习(一个复杂的API”)。例如,从WordNet How to借用基于Python的Natural Language Toolkit (NLTK)

>>> from nltk.corpus import wordnet
 >>> 
 >>> # Get All synsets for 'dog'
 >>> # This is essentially all senses of the word in the db
 >>> wordnet.synsets('dog')
 [synset('dog.n.01'),synset('frump.n.01'),synset('dog.n.03'),synset('cad.n.01'),synset('frank.n.02'),synset('pawl.n.01'),synset('andiron.n.01'),synset('chase.v.01')]

 >>> # Get the deFinition and usage for the first synset
 >>> wn.synset('dog.n.01').deFinition
 'a member of the genus Canis (probably descended from the common 
 wolf) that has been domesticated by man since prehistoric times; 
 occurs in many breeds'
 >>> wn.synset('dog.n.01').examples
 ['the dog barked all night']

 >>> # Get antonyms for 'good'
 >>> wordnet.synset('good.a.01').lemmas[0].antonyms()
 [Lemma('bad.a.01.bad')]

 >>> # Get synonyms for the first noun sense of 'dog'
 >>> wordnet.synset('dog.n.01').lemmas
 [Lemma('dog.n.01.dog'),Lemma('dog.n.01.domestic_dog'),Lemma('dog.n.01.Canis_familiaris')]

 >>> # Get synonyms for all senses of 'dog'
 >>> for synset in wordnet.synsets('dog'): print synset.lemmas
 [Lemma('dog.n.01.dog'),Lemma('dog.n.01.Canis_familiaris')]
 ...
 [Lemma('frank.n.02.frank'),Lemma('frank.n.02.frankfurter'),...

虽然WordNet中存在美国英语偏见,但它支持英国的拼写和使用。例如,您可以查找“颜色”,“lift”的其中一个synset是“elevator.n.01”。

关于XML的注释

如果将数据表示为XML是必需的,您可以轻松地使用其中一个API来访问WordNet数据库
并将其转换为XML,例如见Thinking XML: Querying WordNet as XML

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念