可能重复:
Converting Symbols, Accent Letters to English Alphabet
我不是Java程序员,我想用非特殊字符替换特殊字符。我正在做的是myString.toLowerCase().replace('ã','a').replace('é','a').replace('é','e')...
,但我确信有一个更简单的方法可以做到这一点。
我曾经使用PHP,它有str_replace函数
// Provides: You should eat pizza, beer, and ice cream every day
$phrase = "You should eat fruits, vegetables, and fiber every day.";
$healthy = array("fruits", "vegetables", "fiber");
$yummy = array("pizza", "beer", "ice cream");
$newphrase = str_replace($healthy, $yummy, $phrase);
Java中有类似的东西吗?或者至少比我想要替换的每一个字符都更容易使用replace
。
答案 0 :(得分:4)
我不认为带有数组的str_replace等同于JDK,但如果您觉得它更方便,您可以自己轻松创建它:
public static String strReplace(String[] from, String[] to, String s){
for(int i=0; i<from.length; i++){
s = s.replaceAll(from[i], to[i]);
}
return s;
}
答案 1 :(得分:1)
我很长时间没有使用过Java,但你总是可以使用一系列替换(用任何语言)......
char[] specials = "ãéé".toCharArray();
char[] replacements = "aee";
for (int i = 0; i < specials.length; i++) {
myString.replaceAll(specials[i], replacements[i]);
}