我搜索了 SO(和 Google),但没有找到任何完全匹配我的问题的答案:
我想String
用另一个字符替换所有瑞典字符和空格。我希望它按如下方式工作:
- “å”和“ä”应替换为“a”
- “ö”应替换为“o”
- “Å”和“Ä”应替换为“A”
- “Ö”应替换为“O”
- “”应替换为“-”
这可以通过正则表达式(或任何其他方式)实现,如果可以,如何实现?
当然,下面的方法可以完成这项工作(我知道,可以通过在同一行替换例如“å”和“ä”来改进):
private String changeSwedishCharactersAndWhitespace(String string) {
String newString = string.replaceAll("å", "a");
newString = string.replaceAll("ä", "a");
newString = string.replaceAll("ö", "o");
newString = string.replaceAll("Å", "A");
newString = string.replaceAll("Ä", "A");
newString = string.replaceAll("Ö", "O");
newString = string.replaceAll(" ", "-");
return newString;
}
例如,我知道如何使用正则表达式将所有“å”、“ä”或“ö”替换为“”。问题是如何使用正则表达式替换一个字符,具体取决于它是哪个字符?肯定有比上述方法更好的使用正则表达式的方法吗?