如何获得特殊的算法,以使大写字母和简单字母具有相同的值。
范例-
Ā-> Aa
-ā-> aa
-Č-> Ch
-č-> ch
public static readonly Dictionary<string, string> dict = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase)
{
{"Ā", "Aa"},
{"Č", "Ch"},
{"Ē", "Ee"},
{"Ī", "Ii"},
{"Š", "Sh"},
{"Ū", "Uu"},
{"Ž", "Zh"}
};
忽略大小写
string inputText = Console.ReadLine();
foreach (var item in dict)
{
inputText = inputText.Replace(item.Key, item.Value);
}
答案 0 :(得分:3)
替换是区分大小写的,因此您的代码将仅替换为大写字母,也可以对小写字母进行相同替换:
foreach (var item in dict)
{
inputText = inputText.Replace(item.Key, item.Value)
.Replace(item.Key.ToLower(), item.Value.ToLower());
}
但是正如@TimSchmelter所说,最好在字典中同时包含小写和大写字母,例如:
public static readonly Dictionary<string, string> dict = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase)
{
{"Č", "Ch"},
{"č", "ch"},
//other items
};