我正在尝试使用德语字母的电话簿排序对字符串列表进行排序。在德语字母排序中,特殊字符或变音符号由以下表示:
- ä -> ae
- Ö -> oe
- Ü -> ue
因此,升序排序最终应该是这样的:
- 广告
- A
- 对
我在 C# 领域工作,一直在使用 CultureInfo 创建一个新的字符串比较器进行排序。使用它,我得到以下命令:
- A
- 广告
AF
List<string> l = new List<string>(); l.Add("Ad"); l.Add("Ä"); l.Add("Af"); var comparer = StringComparer.Create(CultureInfo.CreateSpecificCulture("de"), true); var x = l.OrderBy(y => y, comparer); foreach(var outp in x) { Console.WriteLine(outp); }
有谁知道我如何使用自定义比较器或使用现有的文化比较器来做到这一点?
最佳答案
德语电话簿排序是一种替代排序,可以通过使用“de-DE_phoneb”作为名称而不是使用“de”来激活。
关于c# - 如何按德语电话簿字母表对字符串进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58697096/