问题标签 [metaphone]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1267 浏览

metaphone - 双变位错误

我正在使用Lawrence Philips Double-Metaphone算法取得了巨大成功,但我发现某些组合出现了奇怪的“意外结果”。

是否有其他人对算法的其他部分进行了添加或更改,他们不介意共享,或者只是他们发现无法按预期工作的组合。

例如。我有以下问题:

  • 皮希尔和布什利。(均与 PXL 匹配)
  • 罗克利夫和罗克利夫(RKLF 和 RKKL)
0 投票
1 回答
1786 浏览

metaphone - 双变音器的测试套件?

我已经将 Double-Metaphone 翻译成 ActionScript3 并且我想(显然)在我将源代码发布到……嗯……开放之前对其进行测试。

我正在寻找一长串带有主要和次要代码的名称。除了一个带有成对名称的列表(大概它们应该匹配)之外,谷歌没有找到任何东西。

谢谢

0 投票
2 回答
9360 浏览

algorithm - 为非英文字符启用 soundex/metaphone

过去几天我一直在研究 soundex、metaphone 和其他字符串搜索技术,据我了解,这两种算法都可以很好地处理转译为英语的非英语单词。

然而,我的要求是让这种搜索在原始的、未音译的语言中工作,适应德语、挪威语甚至西里尔字母等字母。

是否有任何搜索算法能够完全处理这些字母?还是我最好使用第三方全文搜索库,例如 Lucene?因此,问题就变成了“Lucene 是否处理非英文字母?”

0 投票
2 回答
2484 浏览

php - PHP 中函数 metaphone() 和 soundex() 的实际用途是什么?

Metaphone 和 Soundex 是通过英语发音来索引字符串的语音算法。

你曾经使用过标准 PHP 库中的metaphone()soundex()函数吗?

做什么的?这些功能的实际用途是什么?

0 投票
2 回答
279 浏览

mysql - 在 MySQL 中检索具有 3 个或更少字符的单词

我有一个包含一堆社区名称的字段的表。其中一些社区的名称包含 2 个或更多单词。如何获取 3 个或更少字符且出现在名称中间且包含 3 个或更多单词的单词列表?

例如:

Lake =什么都不做,只有 1 个单词
Golden Lake =什么都不做,只有 2 个单词
Lakes of Gold =提取“的”

本质上,我想列出一个“垃圾”词列表,以便在构建变音位句子时删除。

0 投票
2 回答
1421 浏览

ms-access - 微软access中如何实现metaphone?

我想在 Microsoft Access 中使用变音位算法进行模式匹配。我在http://www.snakelegs.org/2008/01/18/double-metaphone-visual-basic-implementation/上找到了一个代码, 但它不起作用,相反,Microsoft Access 2007 挂断了。

我已经尝试过 soundex,但这不足以满足我的目的。

任何帮助将是可观的......

0 投票
3 回答
1517 浏览

php - 如何在数组中搜索字符串的一部分?

我想搜索完整的字符串或字符串的一部分是否是数组的一部分。如何在 PHP 中实现这一点?

另外,我怎样才能在其中使用变音器?

例子:

如果我搜索array1in array2,那么:

'India' 应该匹配 'India is in east' 并且同样适用于美国和中国。

0 投票
2 回答
1592 浏览

sql-server - 变音器 3 信息

有谁知道在哪里可以找到与 T-SQL 匹配的 Metaphone 3 的代码,或者至少可以找到详细描述 Double Metaphone 和 Metaphone 3 之间区别的代码?我一直在努力评估 SQL Server 中的不同匹配算法,并想看看这个算法是如何执行的,但可以找到的信息很少。

0 投票
1 回答
234 浏览

php - PHP metaphone 实现错误

我正在测试 C# 的 metaphone 实现,并将其结果与 PHP 的内置 metaphone() 函数进行比较。但是,我遇到了一个错误(以前记录在 PHP 的问题跟踪器中并在邮件列表中讨论过),但出于个人兴趣,我正在尝试了解其错误背后的 C 代码。

基本上,根据变音位算法,-gh- 的大多数实例应该被渲染为静音。在“wright”的具体测试用例中,我期望(并用我自己的算法生成)“RT”的变音键

但是,PHP 的变音位函数返回 RFT。显然,它将 -gh- 转换为 F,就好像它位于单词的末尾(例如“rough”),但对于单词“wright”,这是不正确的,因为 -gh- 确实不要在词尾出现。查看 PHP 源代码分发中的 metaphone.c 文件,我看到了一些关键的东西:

然后在第 342 行:

有人可以帮我理解 NOGHTOF 函数的确切作用以及为什么这段代码错误地为“wright”中的 -gh- 呈现 F 吗?我不是真正的 C 人,所以代码对我来说根本不清楚。

0 投票
2 回答
7389 浏览

php - 使用 soundex() 或 metaphone() 创建 Mad Gab 风格短语的算法

我正在尝试创建一个算法来建议Mad Gab风格的短语。

输入是一组短语。我还有一组关键字,我想尽可能使用它们。目前,我的解决方案只是蛮力:

  • 循环短语(逐个字符)
    • 如果找到关键字
      • 存储关键字和分支(递归)
    • 增加字符数

但是,我遇到的问题是:

  • 考虑复合关键字,例如“catchs”可以是“catches”、“cat”+“cheeses”
  • 允许字面意思 - “the”、“and”、“one”、“two”、“three”。
  • 如何建议不是关键字的术语。即,当找不到关键字或文字时,求助于系统字典之类的东西。
  • 跳过短语片段。现在它只是通过一次。但是考虑一下短语以不匹配的内容开头但后面几个字符包含匹配项的情况。

我最熟悉 PHP 和 MySQL。但是,如果它提供更好的解决方案,我对另一种技术持开放态度。

我也对任何其他建议感兴趣。特别是使用第二个参数的方法metaphone()来提出更难的建议。