问题标签 [soundex]

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 投票
1 回答
2006 浏览

python - Python: efficient multi-string replace

Can this function be made more efficient? I need to process a million names...

0 投票
4 回答
12127 浏览

mysql - 如何在 mysql 中查询 soundex()

在 MySql 中使用搜索的正确结构是什么soundex()?我知道如何生成 soundex():

只是不确定如何将其包含在我的查询中。

0 投票
1 回答
976 浏览

mysql - 模糊自动完成

在我的应用程序中,我有一个用户表,其中包含first_namelast_name。我目前有第三列full_name(自动生成),如下所示:first_name + last_name + first_name(没有特殊字符)。

现在,我有一个简单的算法来自动完成用户输入(删除了特殊字符):

此查询返回 Etienne,输入Crécy Etienne为 , Etienne De, Cré, Cre,Etienne

我想在这个查询中添加一些模糊,以允许用户拼写错误。当用户编写时,这个新算法应该能够返回 Etienne:

  • Etiene(类似于名字)
  • Etienne Crecy(与全名相似,不加分词)
  • Crecy Etienne(类似全名,不加分词,其他方向)
  • De Cressi(听起来像姓氏)
  • Cressi(听起来像姓氏,没有分词)

我做了很多搜索,最相关的想法是使用SOUNDEX方法(或Metaphone程序),或levenstein程序。我不能像它一样使用它,因为:

  • Soundex 基于第一个字母,thenSOUNDEX(Cressy)与 不同SOUNDEX(De cressy),即使它们非常相似。
  • 变音位基于字母的位置(以“kn”开头就像以“n”开头,但仅在第一个位置)
  • levenstein 不关心字符串长度:De Cressy 与 Cressy 不同。

您对“混合”这些方法有什么想法,或者您对我有其他想法吗?

0 投票
1 回答
1377 浏览

java - 印度语言的拼音搜索

我想在我的 android 应用程序中以语音方式比较字符串。但这里的特例是,我想比较用英语写的印度语单词。例如,我想检查“Edhu”“Adhu”“Yethu”是否在语音上相等,它们在泰米尔语中的意思都相同。但是使用英语脚本编写印度语言的人使用不同的拼写来制作这个词。在这种情况下如何比较单词?

我尝试了 Levenshtein。但我不确定如何将它返回的数字转换为相等。

我试过Soundex,当单词的第一个字母发生变化时,Soundex代码不一样。但它能够找出相似的发声部分。我不明白它是如何工作的。

0 投票
1 回答
1065 浏览

python - 有没有一种方法可以在不使用语料库的情况下生成听起来与给定字典单词相似的单词?

我正在尝试使用 Soundex 和/或 Metaphone 等语音算法来生成听起来与给定字典单词相似的单词。我是否必须拥有所有字典单词的语料库才能做到这一点?是否有另一种方法可以在不使用语料库的情况下生成听起来与给定单词相似的单词?我正在尝试用 Python 来实现。

0 投票
1 回答
63 浏览

php - MySQL,如何处理名称变体?如何检查一个值是否包含在字符串中?

我正在做一个涉及 PHP 和 MySQL 的项目。我承认我对两者都很陌生。

我有一个有一些公司名称的表,比如说可口可乐,如果用户搜索可口可乐,我必须从表中读取一些信息。我的问题是,即使用户写的是可口可乐公司或其他任何匹配的东西,我怎样才能让它工作?

我已经实现了 SOUNDEX,它提供了基本的错误处理,但现在我想要一些可以让我检查表中的名称(可口可乐)是否与来自用户的字符串匹配的东西(“可口可乐公司”包括“可口可乐”) .

我找到了“LIKE”声明

但它似乎可以解决问题,它可以检测用户是否写了更少的东西,但是如何检测他/她是否写了更多的东西?(就像是

如果它甚至存在)。

0 投票
0 回答
31 浏览

search - 搜索列表数据

我正在尝试找出根据商家名称和金额搜索列表的最佳方法。例如考虑以下事务类或目标:

搜索列表的输入可能是商家的“Acme”和金额的“13.37”。或“Amce”——Acme 拼写错误。天气商人的拼写 100% 正确或略有偏差 我想退回所有“Acme”交易。此外,基于输入金额的“接近度”和拼写与实际交易金额/名称的接近度,为交易提供排名或权重,以便 UI 层可以相应地呈现。

从概念上讲,我了解 SoundEx 和 Edit Distance 类型的算法,但在代码中实现这一点的实践经验为零。希望从这里的社区中汲取经验,您将获得指导。我知道这段代码可能(也许不是)更适合在 SQL 中实现(在我的情况下是 SQL),但现在我想看看这是否可以在应用程序代码中实现——c#。不过对 SQL 建议持开放态度。

谢谢

0 投票
0 回答
271 浏览

python - 模糊安装成功但模糊.Soundex(4)在python中有问题

代码:

错误:

真的不知道为什么,如果知道的请帮忙!

0 投票
1 回答
97 浏览

soundex - 确定 soundex 转换

将名称“Lukasieicz”转换为 soundex(字母、数字、数字、数字、数字)时,我想出了 L2222。

但是,我的演讲幻灯片告诉我,实际答案应该是 L2220。

请解释为什么我的答案不正确,或者讲座的答案是否只是一个错字之类的。

我的步骤:

0 投票
1 回答
148 浏览

xcode - Soundex 为每个字符返回 0

我有这个函数可以将单词转换为 soundex 值,但它会将所有字母返回为 0。例如,我的姓氏 Smith 应该是S530,但返回S000

代码链接(因为这里放得太长了): http: //pastebin.com/9hESxV7P

我让它记录 的值,letterArray它确实评估为我姓氏中所有字母的数组。它必须在for ... in循环中。任何帮助都会很棒。谢谢!