用于优化字符串的库(Boyer-Moore算法)

use*_*295 7 delphi delphi-xe2

我在项目中大量使用字符串,所以我正在寻找的是一个快速库来处理它们.我认为Boyer-Moore算法是最好的.

有免费的解决方案吗?

men*_*raz 6

您可以考虑以下实施Boyer-Moore算法的资源:

最后编辑:

StringSimilarity的包theunknownones项目是模糊和拼音串比较算法的良好来源:

  • DamerauLevenshtein
  • Koelner Phonetik
  • 的SoundEx
  • 音位
  • DoubleMetaphone
  • NGRAM
  • 骰子
  • JaroWinkler
  • NeedlemanWunch
  • SmithWatermanGotoh
  • MongeElkan


OnT*_*Fly 3

注意:回答评论不是问题本身

\n\n

有(或者更确切地说,,因为它目前已被放弃)一个 Delphi 单元(即!)FastStrings,它通过大量使用内联汇编器来实现 Boyer\xe2\x80\x93Moore 字符串搜索算法。是您正在寻找的人吗?

\n\n

作为旁注:项目主页现在与作者的电子邮件一样长,因此我发现考虑到许可条款的限制性,此代码的重用(以及修改,当然还有任何进一步的开发)相当成问题。

\n

  • @DavidHeffernan,你说得很好。我评论的时候甚至没有看到XE2标签(因为没有这样的标签?)。投反对票的人应该说“它不能与 XE2 一起工作,你使用的编译器......”值得投反对票的是制作大沙拉的 OP(请参阅 Cosmin Prund 的评论)。无论如何,这个答案可以为那些没有XE2的人服务。 (4认同)
  • @kobik也许更好的问题是为什么要赞成“我们曾经使用FastStrings,但它不适用于您使用的编译器XE2”的答案。对糟糕的答案进行投票并没有多大帮助。它只是鼓励人们写出糟糕的答案。 (2认同)