问题标签 [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 投票
0 回答
152 浏览

php - PHP 7 变音器功能表现

在研究 PHP 7 及其变化和性能时,我遇到了一个在 PHP 5 中比在 PHP 7 中更快的函数:metaphone(). 我测试的所有其他函数在 PHP 7 中都要快得多。

我找不到有关此的任何信息,而且似乎没有人遇到过这个,这让我认为问题出在我的最后(服务器配置或其他东西)。但是,据我所知,两个 PHP 版本的配置文件(php.ini)是相同的(都是 x86)。

我在 IIS 中使用 PHP 5 和 PHP 7 运行了以下脚本:

结果:

PHP 5.5.30:0.97

PHP 7.0.0:2.98

我希望有人可以在他们的服务器上测试这个。如果你得到相同的结果,为什么在这种情况下 PHP 7 比 PHP 5 慢?如果没有,我的问题可能是什么?

编辑:

我只是注意到了这些功能strtoupper(),而且strtolowerPHP 7 中的速度也比 PHP 5 中慢。

0 投票
1 回答
3115 浏览

teradata - 基于近似字符串匹配提取记录的 Teradata SQL

我们使用的是 TD 14 版本,我来自 Netezza / Postgre(Redshift) 背景。我被要求从审计日志中提取登录数据,以找出相同 ip 提交外观相似的用户名并进行小的更改的记录/交易。例如 Samir --> Samr --> Amir 等 捕获网络钓鱼活动。在 POstgres 中,我们有像 '%' 这样的模糊字符串函数,例如 ColA % ColB(其中 % 运算符等同于 Similar)Soundex、Metaphone、levenshtein 等。但是在 Teradata 中,我刚刚遇到或者我只能找到 Soundex。Teradata 版本 14 是否有任何此类内置函数/方法功能来实现上述字符串近似。

0 投票
0 回答
44 浏览

php - 为什么 Windows 上的 php 函数“metaphone”比 linux 慢 20 倍?

有人知道为什么 php 函数“metaphone”在 Windows 上的运行速度比 Linux 慢 20 倍左右吗?我用循环基准测试,结果是:Linux php5 为 0.123 秒,windows php7 为 1.892 秒

数学运算几乎相等。

类似的问题strtoupperstrtolower两者在 Windows 和 linux 上都慢 3-4 倍。

0 投票
1 回答
94 浏览

php - 如何比较 2 个变音位结果

我想知道是否有一种有效的方法来比较 php.ini 中的 2 个 metaphone 结果。

变音器 1 = OSKRSWRNNTFYFFTFRHNNSSBSTPKTR

变音器 2 = FYNTTNWSWRNBTRPRTTLRKTFRHKTTRT0BSTPKTRWNRT0SKR

什么是好的开始或方法?

0 投票
1 回答
822 浏览

postgresql - PostgreSQL:使用来自两个表的模糊匹配进行地址匹配

我想做的事;

我有两个带有两个地址列的表,它们都存储为text我想创建一个返回匹配行的视图。

我尝试过的;

我已经在列和表上创建并索引如下;

CREATE INDEX idx_table1_fulladdress ON table1 (LOWER(fulladdress_ppd));

然后运行以下命令;

什么没用 上面返回的记录比我知道的要少。经检查,这是因为两个表之间的地址格式不一致,即。

该地址在表格中的格式也不一致,即table并非所有地址都包括城镇,因此我无法使用regextrim批量清理。

然后我在 postgres 中看到了该fuzzystrmatch 模块,这听起来可能会解决我的问题。

问题 Soundex、Levenshtein、Metaphone 中哪个最合适。大多数记录都是英文的,有些地名是盖尔语,在 9.6 上运行。

0 投票
1 回答
956 浏览

oracle - 我想在存储过程中使用双变音算法 oracle 是否有任何内置函数?

我想在 oracle 数据库中使用双变音位算法。oracle 是否有内置功能。

0 投票
0 回答
560 浏览

php - 搜索词中拼写错误的 Soundex 或 Metaphone 算法

在我们的搜索中,我们需要返回匹配搜索词的结果,Levensthein 距离最大值为 2。问题是我们需要对表中的每一行应用 Levensthein 距离算法,它有数百万行,然后查询非常慢。

SOUNDEX 和 Metaphone 很棒,因为它们产生的哈希值可以存储在数据库中并与搜索的字符串进行比较。但它们是基于语音的,而不是基于“错字”的。它们适用于某些情况,但并非适用于所有情况。

我知道似乎不可能生成 Levensthein 哈希并存储它,因为我们不知道搜索词。

所以问题是是否有任何算法,如 SOUNDEX 或 Metaphone 是面向“错字”的。

我们使用 MariaDB 数据库和 PHP,因此在 PHP 中实现任何一个都应该是可行的。

0 投票
0 回答
1287 浏览

c# - 全名的双重变位算法

我有全名列表,并尝试比较/搜索匹配的拼音全名;我Double metaphone在我的 C# 中使用

说我的清单是这样的;

当我尝试搜索时,Double Metaphone它将仅搜索初始单词(名称)。

如果我写Hameed将如何进行搜索,这应该返回 Abdul Hameed Khan。目前它只返回名字。还有一件事,我如何在这个算法中比较阿拉伯语或乌尔都语名称。

这里外部代码工作;

此源代码作为参考使用:https ://www.codeproject.com/Articles/4624/Implement-Phonetic-Sounds-like-Name-Searches-wit

0 投票
1 回答
576 浏览

nlp - Metaphone 3和Double Metaphone之间的区别

过去几天我一直在阅读许多关于 Metaphone 3 的文章。我看到 Metaphone 3 也像 Double Metaphone 一样为每个单词返回 2 个键。实际上,我很困惑,Double Metaphone 和 Metaphone 3 之间的核心区别是什么?(显然,Metaphone 3 有一些特别之处,因为人们购买了它。)谢谢。

0 投票
0 回答
38 浏览

mysql - MySQL选择可能的正则表达式问题

我正在使用 MySQL 数据库,该数据库在 VARCHAR 字段中保存字符串的变音位键(人名),但是在提取具有多个名称的个人时遇到了问题。

以“Mary Ann”的变音位键为例,它在数据库中(以空格分隔)存储为“MR AN”。如果我想取出所有“Mary's”(MR),我可以这样做:-

但这不会像我想做的那样拉出“玛丽安”(MR AN)。我可以试试:-

但这有可能拉出其他不是玛丽的带有“MR”的变音键。对于像“Lee”这样的变音键只是“L”的短名称,这也是一个类似的问题。执行“LIKE '%L%'”可能会返回数百万个其他名称......

所以我的问题是最好的方法是什么?如何提取一个字段中的单个变音键,空格分隔?为此,我是否需要在 select 语句中进行某种常规表达?