超越大小写敏感性的字符串比较
在字符串操作领域,常用的String.Contains
方法提供了一种直接的方法来确定一个字符串是否存在于另一个字符串中。然而,在某些情况下,不区分大小写变得至关重要。
最初的问题寻求一种不考虑大小写比较字符串的方法。虽然最初将两个字符串都转换为大写的解决方案可能显得笨拙,但可以使用更全面的方法。
利用StringComparison的强大功能
StringComparison
枚举为不区分大小写的比较提供了一种优雅的解决方案。通过将StringComparison.OrdinalIgnoreCase
作为参数传递给IndexOf
方法,可以达到预期的结果。
<code class="language-csharp">string title = "ASTRINGTOTEST"; bool contains = title.IndexOf("string", StringComparison.OrdinalIgnoreCase) >= 0;</code>
使用扩展方法扩展工具集
为了提高代码可读性和简化未来的使用,定义一个专门用于不区分大小写比较的扩展方法可能是有益的。
<code class="language-csharp">public static class StringExtensions { public static bool Contains(this string source, string toCheck, StringComparison comp) { return source?.IndexOf(toCheck, comp) >= 0; } }</code>
使用方法
扩展方法可以轻松地用于执行不区分大小写的字符串比较。
<code class="language-csharp">string title = "STRING"; bool contains = title.Contains("string", StringComparison.OrdinalIgnoreCase);</code>
通过采用这些技术,开发人员可以满足需要灵活且不区分大小写字符串比较的应用程序,有效地扩展他们的工具集,以实现高效且细致的文本操作。
以上是如何在C#中执行不敏感的字符串比较?的详细内容。更多信息请关注PHP中文网其他相关文章!