【发布时间】:2021-12-23 08:21:01
【问题描述】:
拜托,我正在开发一个用于人员实时识别的 PoC,其中一个关键方面是支持名字、中间名和姓氏的轻微拼写错误和语音变化。像 HarinGton == HarrinBton 或 RaphEAl == RafAEl。它适用于较长的名字,但对于像 Lee 和 John 这样的名字就有点不精确了。
我在 PostgreSQL 13.3 (Supabase.io) 中通过 dmetaphone() 和 dmetaphone_alt() 使用 Double Metaphone。虽然我很欣赏 Double Metaphone,但它有一个(也是?)短字符串作为结果。 metaphone() 具有使生成的语音表示更长的参数。我调查了 dmetaphone() 并没有找到除了默认函数以外的任何东西。
有没有办法让 dmetaphone() 和 dmetaphone_alt() 返回类似于 metaphone() 的更长的语音表示,但具有 ALT 变化?
任何帮助将不胜感激。
谢谢
【问题讨论】:
-
对此进行了深入研究,感觉就像
dmetaphone实现在 postgres 中被破坏了。我永远无法返回长度超过 4 个字符的编码字符串。可能会查看代码库并尝试提出问题
标签: postgresql plpgsql phonetics supabase