是否有一个ruby库来检查字符串是否是一个有效的单词?

时间:2010-02-17 22:26:58

标签: ruby

我正在尝试隔离pdf文件中的单个单词,但是当使用pdf-reader gem读取文件时,文本会破碎,就像这样

"A lit"
"tle "
"bit of tex"
"t"

所以我打算用一些启发式方法将它们放在一起。为此,我需要一个库来检查给定的字符串是否是有效的英语单词,如

"tree".is_english? # => true
"askdjfah".is_english? # => false

这是否存在?理想情况下,它也适用于德语文本。

如果没有,是否有一些免费提供的在线词典?我想我可以编写自己的树结构来进行查找,如果必须的话。

3 个答案:

答案 0 :(得分:3)

您可以使用您喜欢的任何词典查看raspell,甚至手动调用aspell

答案 1 :(得分:2)

如果系统上安装了unix工具look,则可以轻松检查单词是否为单词。例如:

strings = %w{ cat dog tree trees treez }

strings.each do |string|
  if system("look #{string} > /dev/null 2>&1") 
    puts "#{string} is a word"
  else
    puts "#{string} is not a word"
  end
end

以下是有关lookhttp://docstore.mik.ua/orelly/unix/upt/ch27_18.htm

的更多信息

由于look使用/ usr / dict / words中的单词词典,我认为可以安装德语单词词典。在Debian中寻找wgerman包。我不确定如何在其他系统上安装它。

答案 2 :(得分:0)

我不知道任何图书馆能做你想做的事情,但是有字典的字典。它应该不难在谷歌上找到它们。例如this