2

我有一个清单:

List(Of String)

我想用 LINQ 过滤它。

我使用这样的东西:

newList = (From l In myList Where l Like String.Format("%{0}%", value)).ToList

值类似于aorno等​​。

我想要类似LIKESQL 的东西:

like "%a%"

所以我会得到一个字符串列表,其中a每个字符串都有一个。

我该怎么做?

dim list1 as list(of string)
list1.Add("aaa")
list1.Add("bbb")
list1.Add("ccc")
list1.Add("abc")
list1 = from l in list1 where ???? 'like "a" return list1 with 2 item : "aaa" and "abc"
4

3 回答 3

6

列表 a = new List();

a = a.Where(item => item.contains("a")).ToList();

于 2012-04-05T22:42:14.483 回答
1

在 C# 中:

var newList = originalList.Where(item => item.Contains("a")).ToList();

在 VB.Net 中:

dim newList = originalList.Where(Function(item) item.Contains("a")).ToList
于 2012-04-05T22:57:59.477 回答
0
   (From I in Mylist
   Where I.smth Contains(String)
   Select I);

对于字符串列表,您可以这样做:

   (From I in Mylist
   Where I.smth Contains(String(0)) Or I.smth Contains(String(1))...
   Select I);

如果您不知道会得到多少字符串,您可能还需要动态查询。这比较困难,我无法解释

于 2012-04-05T22:41:30.400 回答