其中为StringComparer.OrdinalIgnoreCase的大小写转换方法
本文关键字:大小写 转换方法 OrdinalIgnoreCase StringComparer | 更新日期: 2023-09-27 18:12:30
在下面的简单方法中,对于字符串比较器,我调用相应的ToLower()
方法。是否有StringComparer.OrdinalIgnoreCase
的案例转换方法暴露在框架的某个地方?
Function ToLowerIfCaseInsensitiveComparison(s As String, cmp As StringComparison) As String
Select Case cmp
Case StringComparison.CurrentCultureIgnoreCase
Return s.ToLower()
Case StringComparison.InvariantCultureIgnoreCase
Return s.ToLowerInvariant()
Case StringComparison.OrdinalIgnoreCase
Return ___________________ ' expecting your answers
Case Else
Return s
End Select
End Function
(c#或VB -任何你喜欢的。答案可能与语言无关)
UPDATE:我必须纠正自己关于小写转换:在。net框架中使用字符串的最佳实践说
使用字符串。ToUpperInvariant方法代替字符串。ToLowerInvariant方法,当您规范化字符串进行比较时。
StringComparison。OrdinalIgnoreCase可以用作string的参数。= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
在c#:var string1 = "Hello";
var string2 = "hello";
Console.WriteLine(string1.Equals(string2, StringComparison.OrdinalIgnoreCase));
// Output: true
序数比较基于字符串中每个Char的数值(Unicode码点)。如果想以顺序比较的格式返回字符串,可以使用以下方法:
string GetUnicodeString(string s)
{
StringBuilder sb = new StringBuilder();
foreach (char c in s)
{
sb.Append("''u");
sb.Append(String.Format("{0:x4}", (int)c));
}
return sb.ToString();
}