将特殊字符替换为相应的英文字母

时间:2018-06-04 11:41:31

标签: java unicode fuzzy-search unicode-normalization phonetics

寻找一个实现或库(理想情况下是Java),将 Unicode 文本(如下图)转换为相应的 ASCII 英文字符:

  

ʀᴇɢɪꜱᴛʀᴀᴛɪᴏɴ

以下内容应转换为:

  

注册

但请注意,这是其他可能要转换的字符,例如“cσdє”。

最终目标是进行 phenetic / fuzzy match ,但是我相信一旦角色是实际的ASCII英语就会变得容易。

1 个答案:

答案 0 :(得分:0)

事实证明它们被称为Homoglyphs,所以我们试图防止Homoglyph / Homograph攻击。

我发现这个库Homoglyph Detection是解决问题的良好起点;它们提供了良好的映射,但不完整,无法真正阻止垃圾邮件。

将社区共享和完成此类unicode-to-latin映射文件会很不错。