如何检查StringComparison是否区分大小写
本文关键字:StringComparison 是否区 大小写 检查 何检查 | 更新日期: 2023-09-27 18:16:10
给定StringComparison
实例,我该如何检查它是否区分大小写?
我应该将它与枚举中所有当前已知的区分大小写的值进行比较吗?
StringComparison sc = ...;
bool isCaseSensitive = false
|| sc == StringComparison.CurrentCulture
|| sc == StringComparison.InvariantCulture
|| sc == StringComparison.Ordinal;
是的,对于枚举形式(StringComparison
),这很好。MS现在不太可能添加另一个StringComparison
值,因为向enum添加值实际上是一个破坏性的更改。
对于StringComparer
,它相当困难:(
是的。StringComparison
是一个包含6个值的enum,并且没有方法来测试它们的大小写敏感性。
你必须自己做,你的方法似乎是合理的。
如果你想要一个(nice | nasty)一行字:
bool isCaseSensitive = (int)StringComparison.Ordinal % 2 == 1;
如何实际使用提供的enum来比较两个字符串?
bool isCaseSensitive = !("A".Equals("a", sc));