C#中不區分大小寫的字符串比較
C#中的String.Contains
方法用於檢查一個字符串是否包含另一個字符串,但默認情況下它是區分大小寫的。要執行不區分大小寫的比較,您可以使用以下方法:
1. 使用String.IndexOf
和StringComparison
使用String.IndexOf
方法和StringComparison.OrdinalIgnoreCase
可以忽略搜索過程中的大小寫:
<code class="language-csharp">string title = "STRING"; bool contains = title.IndexOf("string", StringComparison.OrdinalIgnoreCase) >= 0;</code>
2. 創建自定義擴展方法
另一種方法是為字符串創建一個自定義擴展方法,以提供所需的行為:
<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#,請使用以下代碼:
<code class="language-csharp">if (source == null) return false; return source.IndexOf(toCheck, comp) >= 0;</code>
以上是如何執行不敏感的字符串包含C#中的檢查?的詳細內容。更多資訊請關注PHP中文網其他相關文章!