在 C# 中,您可以比较两个字符串String.Equals
并提供一个StringComparison
.
我最近一直在寻求更新我古老的比较方法,ToLower()
因为我读到它不适用于所有语言/文化。
据我所知,比较类型用于确定在遇到包含列表时的顺序aé
以及ae
应该首先出现的列表(某些文化对事物的排序方式不同)。
对于string.Equals
,排序并不重要。因此可以安全地假设许多选项是不相关的,并且只有 [Ordinal] 和 [Ordinal]IgnoreCase 是重要的吗?
String.Equals的MSDN 文章说
compareType 参数指示比较是否应该使用当前或不变的文化,尊重或忽略被比较的两个字符串的大小写,或者使用单词或序数排序规则。
string.Equals(myString, theirString, StringComparison.OrdinalIgnoreCase)
我也很想知道 sort 方法在内部是如何工作的,它是否用于String.Compare
计算两个字符串的相对位置?