gpt4 book ai didi

java - 如何为索引准备 Unicode 字符串?

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:02:42 24 4
gpt4 key购买 nike

这个问题是指在索引中存储本地名称的国际字符规范化。我想大体讨论这个问题,也想听听 Java 中可能的现有解决方案(类/库)。


在全局应用程序中,用户输入他们的姓名,应用程序将每个姓名写入搜索索引,以便其他用户可以搜索姓名并找到用户。在英语中微不足道,但在许多其他语言中和/或在全局范围内并不那么微不足道,因为特定字母需要音译和/或可以以多种形式书写。例如,德语名称 Häußler 可以写成

  • Häußler(德国)
  • Haeussler(德国,国际音译)
  • Häussler(瑞士)
  • 豪斯勒(英文音译)

Java 有

    Normalizer.normalize(entry, Normalizer.Form.NFD) // NFC

类,但这在许多情况下似乎不起作用和/或我不知道如何正确使用它。好书也在这里http://en.wikipedia.org/wiki/Unicode_equivalence但我找不到足够的关于这个主题的捆绑信息。

有没有人知道现有的开源项目中有人已经解决了这个问题?任何可以使用的库?网站?

你们日本人、中国人、阿拉伯人等如何将你们的语言音译成英语?像 Facebook 这样的大型社交网络如何音译他们的用户名以确保他们可以在国际上找到?

最佳答案

您走在正确的轨道上 - 您可能想要添加的一个搜索词是“规范的”。

我相信ICU project是处理此问题的最强大的开源软件。对 normalization components 特别感兴趣,特别是 NFKC_Casefold 的实现,它处理德语 ß 示例等。

关于java - 如何为索引准备 Unicode 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26685725/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com