java - 在 Java 中用一个字符替换多个单个字符?

标签 java replace

在 PHP 中,我可以:

$str = preg_replace("/(à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ)/", 'a', $str);

表示在包含任何字符的字符串中,如 à, á, a, ả, ......将被替换为 a

如何在 Java 中实现等价?

最佳答案

您可能想使用 a much more generic solution对于这个问题:

import java.text.Normalizer;
import java.text.Normalizer.Form;

// ...

public static String removeAccents(String text) {
    return text == null ? null
        : Normalizer.normalize(text, Form.NFD)
            .replaceAll("\\p{InCombiningDiacriticalMarks}+", "");
}

这会删除任何脚本中任何字母的所有变音符号。

关于java - 在 Java 中用一个字符替换多个单个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14548175/

相关文章:

java - 在 ADF 中下载文件仅适用于第一次

java - GAE - 部署到 Appspot 服务器后出现 ClassNotFoundException

java - 来自 Web 应用程序的异步调用

jquery替换> html代码上的字符

JavaScript 正则表达式替换宽度属性匹配

java - 如何验证 OWLDataRange 对象是否包含指定值?

java - 有 JGit 管道 API 吗?

regex - 如何使用 ultraedit 删除换行符?

variables - 引用-替换和变量

javascript - 在 JavaScript 中创建正则表达式的问题