使用contains进行不区分大小写的字符串搜索

时间:2012-04-17 10:26:50

标签: c# string search equals contains

我需要在目录中搜索包含输入文本的文件和文件夹,

我可以看到File.Name.Contains(txtSearch)是我需要的那个,但问题是当字符大小写(下/上)不匹配时它不会返回true

虽然File.Name.Equals(txtSearch,StringComparison.InvariantCultureIgnoreCase)解决了这个问题,但它要求搜索字符串完全相同。

2 个答案:

答案 0 :(得分:3)

var position =  File.Name.IndexOf(txtSearch, StringComparison.InvariantCultureIgnoreCase)

如果您的“文件名”包含指定搜索字符串的任何出现,position将大于 -1

所以..

if(position > -1){
    //found files, do something
}

答案 1 :(得分:0)

 var _reps = new List<string>(); // with variant data

_reps.ConvertAll<string>(new Converter<string,string>(delegate(string srt){srt= srt.ToLower(); return srt;})).Contains("invisible")

这是迄今为止我能找到的最干净的方式