有没有函数比较一个字符串与较大的字符串?
这个问题在这里已经有了答案:
如果您的搜索区分大小写,则可以使用Contains
:
var name = "John Smith";
if(name.Contains("John"))
{
// Name contains John
}
或者,要获取包含John的所有名称:
var names = new string[] {"John Smith", "Bob Smith", "Frank"};
var results = names.Where(n => n.Contains("John"));
如果你想忽略大小写,你可以将这两个字符串转换为小写字母:
var results = names.Where(n => n.ToLower().Contains("john"));
你也可以实现你自己的不区分大小写的Contains
函数作为扩展方法:
public static bool Contains(this string value, string substr, StringComparison c)
{
return value.IndexOf(substr, c) >= 0;
}
然后使用:
var results = names.Where(n => n.Contains("John", StringComparison.OrdinalIgnoreCase));
IList<string> lst = new List<string>();
lst.add("John Smith");
lst.add("Elton Johns");
lst.add("mark");
lst.add("jones");
现在要获取包含"John"
的名字
var resultList = lst.Where(x => x.Contains("John")).ToList();
使用System.Linq
private static List<String> GetNames(List<string> names ,string name)
{
return names.Where(x => x.ToLower().Contains(name.ToLower())).ToList();
}
链接地址: http://www.djcxy.com/p/13097.html
上一篇: Is there a function to compare a string to a larger string?