【问题标题】:Converting Non-ASCII code to ASCII equivalent in terms of look在外观方面将非 ASCII 代码转换为等效的 ASCII
【发布时间】:2014-03-24 01:41:34
【问题描述】:

我在 mysql 数据库中有数千个名称,其中包含扩展的 ASCII 代码。我想将它们转换为普通的英文字母。这是一个例子:

Indāpur Jejuri 转换为 -> Indapur Jejuri

那我该怎么做呢?我知道 Java 和 Groovy 以及许多其他脚本语言,但运气不佳。有什么建议吗?

【问题讨论】:

标签: converter non-ascii-characters extended-ascii


【解决方案1】:

我在stackoverflow中浏览了许多帖子后找到了答案:Converting Symbols, Accent Letters to English Alphabet

import java.text.Normalizer;
import java.util.regex.Pattern;

public String deAccent(String str) {
    String nfdNormalizedString = Normalizer.normalize(str, Normalizer.Form.NFD); 
    Pattern pattern = Pattern.compile("\\p{InCombiningDiacriticalMarks}+");
    return pattern.matcher(nfdNormalizedString).replaceAll("");
}

【讨论】:

    猜你喜欢
    • 2010-10-12
    • 2010-12-30
    • 2014-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多