使用String类的
Contains()
方法可以找到子字符串。
如何以不区分大小写的方式查找字符串中的子字符串?
您可以使用 IndexOf() 方法,该方法接受 StringComparison 类型:
string s = "foobarbaz";
int index = s.IndexOf("BAR", StringComparison.CurrentCultureIgnoreCase); // index = 3
如果未找到字符串,IndexOf() 返回 -1。
IndexOf
代替(或者使用正则表达式,尽管不推荐这样做,而且太过分了)。
string string1 = "my string";
string string2 = "string";
bool isContained = string1.IndexOf(string2, StringComparison.OrdinalIgnoreCase) >= 0;
StringComparison.OrdinalIgnoreCase
通常用于更多“编程”文本,例如您可能生成的路径或常量,并且是最快的字符串比较方法。对于语言文本字符串,请使用 StringComparison.CurrentCultureIgnoreCase
或 StringComparison.InvariantCultureIgnoreCase
。
如果找到匹配项,则包含返回布尔值。如果要搜索不区分大小写,可以让源字符串和字符串先匹配大写或小写再匹配。
示例:
if(sourceString.ToUpper().Contains(stringToFind.ToUpper()))
{
// string is found
}
stringToSearch.ToLower().Contains(stringToSearchFor.ToLower())
string myString = "someTextorMaybeNot";
myString.ToUpper().Contains( "text".ToUpper() );