Find a substring in a case-insensitive way - C#
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Case insensitive contains(string)
使用字符串类的
可以使用indexof()方法,该方法采用StringComparison类型:
1 2 | string s ="foobarbaz"; int index = s.IndexOf("BAR", StringComparison.CurrentCultureIgnoreCase); // index = 3 |
如果找不到字符串,indexof()将返回-1。
没有不区分大小写的版本。使用的索引代替(或regex,尽管这不是推荐的,但杀伤力太强)。
1 2 3 | string string1 ="my string"; string string2 ="string"; bool isContained = string1.IndexOf(string2, StringComparison.OrdinalIgnoreCase) >= 0; |
如果找到匹配项,则包含返回布尔值。如果要搜索不区分大小写,可以在匹配之前使源字符串和字符串同时匹配大小写。
例子:
1 2 3 4 | if(sourceString.ToUpper().Contains(stringToFind.ToUpper())) { // string is found } |
1 2 | string myString ="someTextorMaybeNot"; myString.ToUpper().Contains("text".ToUpper() ); |