我有列表,我需要搜索类似的项目:
如果用户搜索smi,它会带来所有包含smi的项目吗?
任何的想法?
这将找到所有以'smi'开头的结果(mySearchString)
foreach(var result in myList.Where(s => s.IndexOf(mySearchString) == 0)) { // Do whatever }
这将找到包含'smi'(mySearchString)的任何内容
foreach(var result in myList.Where(s => s.IndexOf(mySearchString,StringComparison.InvariantCultureIgnoreCase) != -1)) { // Do whatever }
这将搜索您的文本(忽略大小写),并返回包含该文本的任何字符串.
应该工作 - 不要靠近IDE,但希望它有所帮助
请检查以下示例
string serachKeyword ="o"; Liststates = new List (); states.Add("Frederick"); states.Add("Germantown"); states.Add("Arlington"); states.Add("Burbank"); states.Add("Newton"); states.Add("Watertown"); states.Add("Pasadena"); states.Add("Maryland"); states.Add("Virginia"); states.Add("California"); states.Add("Nevada"); states.Add("Ohio"); List searchResults = states.FindAll(s => s.Contains(serachKeyword));