我需要将字符串中的重音替换为对应的英语
例如
ä = ae
ö = oe
Ö = Oe
ü = ue
我知道从字符串中删除它们,但我不知道要替换。
如果您有任何建议,请告诉我。我正在用 C# 编写代码
最佳答案
如果您需要在较大的字符串上使用它,多次调用 Replace()
会很快变得低效。您最好逐个字符地重建字符串:
var map = new Dictionary<char, string>() {
{ 'ä', "ae" },
{ 'ö', "oe" },
{ 'ü', "ue" },
{ 'Ä', "Ae" },
{ 'Ö', "Oe" },
{ 'Ü', "Ue" },
{ 'ß', "ss" }
};
var res = germanText.Aggregate(
new StringBuilder(),
(sb, c) => map.TryGetValue(c, out var r) ? sb.Append(r) : sb.Append(c)
).ToString();
关于c# - 我如何在 .NET 中替换口音(德语),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1271567/