检查字典中的单词

时间:2010-01-09 02:08:46

标签: java dictionary lookup

我需要确定一个未知的5或6个字母的字符串是否是一个有效的单词,即在字典中。我可以将字符串/单词提交到在线词典,但是我需要检查这个字符串/单词,每次都会有不同,大约100到150次。这似乎有点耗费时间。

我的下一个想法是尝试获得自己的字典程序。它需要在Java中,因为我的程序是用Java编写的。 Java API是否已经有了这样做的类?我可以得到某人已经编码的下降,我所要做的就是将字符串/单词提交给它吗?

我的程序未用于拼写检查。我想编写一个程序来解读混乱的单词拼图,当我遇到一个混乱的单词时。谢谢你的建议。

7 个答案:

答案 0 :(得分:1)

您可以使用其中一个开源词典并将其加载到数据库中:ftp://ftp.cerias.purdue.edu/pub/dict/ftp://ftp.ox.ac.uk/pub/wordlists/

答案 1 :(得分:1)

对于混乱的字词,您可能需要查看Jumble algorithm,其实现可见here

答案 2 :(得分:1)

如果您不需要拼写检查,这将非常简单。只需将所有单词加载到HashSet中,然后检查该集是否包含您要测试的单词。有大量word lists可用。

如果您确实需要拼写检查,请查看aspell或其他免费API。

答案 3 :(得分:0)

aspell及其相关的单词列表和词典可能就是答案。

答案 4 :(得分:0)

我认为aspell有一个Java版本。

编辑:实际上看起来你可以用这个名为Jazzy的aspell衍生物做得更好。

答案 5 :(得分:0)

也许你可以查看一些单词表: http://wordlist.sourceforge.net/

此页面包含一些文本格式的单词列表,因此您可以自己使用Java进行处理,最简单的方法是使用HashSet。如果效率很重要,则需要使用更高效的数据结构。

答案 6 :(得分:0)

也许你可以试试Peter Norvig's spelling checker。我认为这是一种获得80-90%准确度的优雅方式。