求助,在List集合中模糊搜索出所有符合包含字符的对象

小夏天~ 2011-12-14 05:41:53


RT

我已经有一个Class类的泛型集合classList

Class类有诸多属性

现要求实现如下:

输入一个字符串Str1,从classList集合中筛选出有任何一个属性值包含str1字符串的对象,add进新集合classNewList

比如Class如果有属性Name,Address,Mobile

Class A = new Class();
A.Name="猪猪123兔兔";

Class B = new Class();
B.Address="深圳市123";

Class C = new Class();
C.Mobile="110123";

还有其他无关对象
则输入123,检索出A,B,C这三个对象。


求一个解决方案,多多益善,让我也学习学习。
相信各位聪明的朋友应该懂我的需求了。

热心的朋友可以加我QQ讨论:501812815
感谢。




在搜索出
...全文
482 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wq0139 2012-09-17
  • 打赏
  • 举报
回复
Lit<Class> list = new ArrayList<Class>();

for(int i=0;i<list.size;i++)
{
if(list[i].Name.indexOf("123"))
{
System.out.println(list[i].Name);
}
}
q107770540 2011-12-14
  • 打赏
  • 举报
回复

void Main()
{
var source=new List<Tim>
{
new Tim{ ID="12",Name="t", School=""},
new Tim{ ID="123",Name="t", School=""},
new Tim{ ID="1234",Name="t", School=""},
new Tim{ ID="1",Name="t123", School=""},
new Tim{ ID="2",Name="t", School="0123"}
};
var query=from x in source
let temp=source.Select(t=>new{ID=t.ID,all=t.ID+","+t.Name+","+t.School}).Where(t=>t.all.Contains("123")).Select(t=>t.ID)
where temp.Contains(x.ID)
select x;


}
class Tim
{
public string ID{get;set;}
public string Name{get;set;}
public string School{get;set;}
}
//此处要求ID唯一
q107770540 2011-12-14
  • 打赏
  • 举报
回复
只要任意一个属性包含 123 即匹配成功?
pitsou7 2011-12-14
  • 打赏
  • 举报
回复
要确定 string 中是否包含一段子字符串, 去 MSDN 查查 System.String 类的方法库, 应该很容易就能找到.

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧