方法一:使用string.Contains方法
string.Contains是大小写敏感的,如果要用该方法来判断一个string是否包含某个关键字keyword,需要把这个string和这个keyword都转成小写或大写再调用Contains方法;
1 string key = "bbb"; 2 string temp = "aaaBBBcccDDD"; 3 bool isContains= temp.ToLower().Contains(key.ToLower());//true
方法二:使用sring.IndexOf方法
使用string.Index方法,然后通过StringComparison.OrdinalIgnoreCase指定查找过程忽略大小写;
1 string key = "bbb"; 2 string temp = "aaaBBBcccDDD"; 3 bool isContains = temp.IndexOf(key,StringComparison.OrdinalIgnoreCase)>=0;//true
总结
当拥有大量英文的字符串中:
*当不区分大小写时,string.IndexOf方法的效率明显高于string.Contains方法;
*当区分大小写时,string.Contains方法的效率明显高于string.IndexOf方法;
*如果判断的是中文,没有大小写之分,还是string.Contains方法的效率高;