问题标签 [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 回答
8503 浏览

machine-learning - metaphone 与 soundex 与 NYSIIS

我正在尝试提出一个隐式拼写检查器,它将使用输入单词到某种更通用的语音表示的映射来解释可能发生的拼写错误,基本上是一个搜索栏,它会自动在一定程度上更正你的拼写. 我一直在研究的两件事是 metaphone、nysiis 和 soundex,但我真的不知道哪个更适合这个应用程序。

我希望有更多的匹配而不是更少的匹配,并且我希望匹配更加通用,因此我正在考虑使用 soundex,这似乎是比原始变音位更近似的映射,但我真的不知道模糊性的差异有多大。我知道 nysiis 与 soundex 非常相似,但我不知道它们有多相似,或者 nysiis 与 metaphone 相比如何。

我也在寻找最快执行的解决方案。我知道这些语音映射器通常很快,但我不确定哪个会最快,考虑到我希望能够在不增加搜索时间的情况下检查拼写,速度是一个考虑因素。想法?

0 投票
1 回答
1442 浏览

mysql - Mysql GROUP BY 类似字段

假设我有这张包含客户订单的表格:

为了节省邮费(对我们而言),如果我们可以在一张打印单上将多个订单发送到同一个人同一地址,那将是理想的选择。为此,我需要 id 1、3、4 的唯一记录。

和代码不能由用户输入(从下拉列表中选择)CityZip

理想情况下,我希望我的查询返回以下内容:

从本质上讲,SQL 算法是在以下列上类似的方式进行分组:NameEmailconcat(Address_1 and Address_2)

任何建议和解决方案将不胜感激。

如果有办法做一个

(对于无望的伪代码真的很抱歉..只是想表达我的想法)。

0 投票
3 回答
2202 浏览

oracle - Soundex 以数字作为字符串参数

您知道为什么SOUNDEX不能将 NUMBERS 用作字符串的一些解释吗?

这些查询工作正常:

但是这个没有:

我正在阅读文档http://docs.oracle.com/cd/E11882_01/server.112/e26088/functions167.htm#SQLRF06109但没有提到一些有用的。

0 投票
5 回答
6275 浏览

java - Java:如何在字符串列表中找到最可能的字符串?

我有一个 Java 字符串列表,其中包含一个拼写不同的人的名字(并非完全不同)。例如,John 可能拼写为 Jon、Jawn、Jaun 等。我应该如何检索此列表中最合适的字符串。如果有人能建议一种在这种情况下如何使用 Soundex 的方法,那将有很大帮助。

0 投票
1 回答
12024 浏览

mysql - 如何在 MySQL 中搜索 Soundex() 子字符串?

我遇到了 Joomla 的问题!3 集成搜索引擎。该引擎的索引器在索引内容时创建所谓的 soundex 值,例如

测试对象,测试对象 1,测试对象 2239923,文本对象 ....

它们都具有相同的 T23123 soundex-value。

现在我的问题是,如果我搜索Test,则不会有任何结果,因为该术语的 soundex-value 是 T230。

搜索引擎使用的查询是:

我检查了这个主题中的 soundex_match 函数,但不幸的是这不能解决我的问题,因为它不比较 soundex 值。

我想避免破解 cms 核心,并想了解是否有某种近似程序可用于比较 soundex 值,例如使用%符号时的常规查询,然后我可以尝试使用插件或其他方式实现。

这里提到的 MSSQLDIFFERENCE函数将是理想的,如果它可以在 MySQL 中使用并准备使用 soundex 值作为第二个参数。

我在 MySQL 方面的经验不是很好,也不知道如何改进查询以匹配 soundex-substrings。

0 投票
0 回答
299 浏览

tsql - 如何在 SQL Server 的文本字段中搜索名称

我需要从 SQL Server 中的文本字段中编辑专有名称。假设我有下表:

我可以这样做:

这对于完全匹配条件应该可以正常工作,但是如果有人在“备注”字段中拼错了名字或姓氏,或者更糟糕的是,使用了 Jim 这样的昵称怎么办?

我认为使用包含的全文搜索对于这种偏差是基于含义或派生的事情很有用,但它适用于名称吗?即使它适用于查找 Notes 包含名称的行,我认为它不适用于 Replace 场景。

我也考虑过 SOUNDEX,但我也没有看到如何使用替换文本字段来做到这一点。我可以看到使用 Soundex 或类似方法的唯一方法是将文本字段拆分为单词并对每个单词进行比较。我必须在人口众多的表格中的许多文本字段上执行此操作,因此如果有更好的方法,我不会对此感到兴奋。

有没有人有做这样的事情的经验?

谢谢

0 投票
2 回答
876 浏览

java - Java:将 Soundex 算法用于庞大的数据库

我一直在使用 Soundex 算法,我发现它已经在 J​​ava http://introcs.cs.princeton.edu/java/31datatype/Soundex.java.html中准备好了。该程序的主要用途是准备一个 .cvs 文件,然后在将其条目保存到数组中之后,它会借助该算法检查其中一个数组的语音相似性。(有关 soundex 算法的更多信息http://en.wikipedia.org/wiki/Soundex)。

我的 .cvs 文件大约有 200.000 个条目,因此,检查 30.000 个条目需要 5 个小时,我认为这很慢。[我的算法将数组的每个条目与所有其他条目一起检查,除了已经检查过的条目 - 所以,我认为这里没有问题]。

所以,我的问题是:有没有办法减少这个时间?

我一直在考虑在 SQL 的帮助下将我的数据库直接连接到程序,但我不知道是否有另一种方法可以更快地做到这一点。

请任何建议都会非常有帮助。

0 投票
1 回答
2465 浏览

java - 具有自定义异常单词匹配的 Android 上的 Speech to Text

我希望能够使用 Android 的 Speech-To-Text 引擎来识别句子中各种不寻常的单词。

举个例子,“脑电图”这个词来自 STT 作为“电子供应图”。当我使用 Soundex 或 Metaphone 将所说的内容与硬编码值进行比较时,该值似乎永远不会匹配或随机匹配。如果我使用阈值(例如,Math.abs(str1.compareTo(str2)) <= 1),那么匹配会变得非常松散,几乎任何东西都会匹配。

本质上,我想做的类似于通过背诵报价从报价数据库中查找报价。问题似乎更多地在于 Google 的 Speech-To-Text 引擎使用的有限词集。

有任何想法吗?

0 投票
1 回答
390 浏览

android - Soundex/Metaphone 用于 android 上的 phonegap

我需要使用类似的东西进行 sql-searches:soundexmetaphonefor androidover phonegap

但既不工作soundex也不metaphone工作。

例子: SELECT * FROM customers WHERE soundex(surname) = soundex('Mayer');

这给我带来了soundex未知的信息。

有人知道我如何使用()或类似的soundex东西吗?soundexphonegapandroid

0 投票
1 回答
4358 浏览

mysql - MySQL 全文搜索和 SOUNDEX

我正在尝试使用全文搜索和 SOUNDEX 实现名字和姓氏搜索(以防名称拼写错误)。

我试图做类似的事情

但这不是有效的语法。

我想要实现的是,当用户键入例如“Jon Ivan”时,列

会匹配。

先感谢您!