DataTable中如何截取字符串筛选?

.Net技术 码拜 10年前 (2015-05-11) 2399次浏览 0个评论
 

一个DataTable,里面有“ID”列,一长串字符数字如188812345,我要筛选ID第2-4位为“888”的所有行,如何?

8分
static void DataTableStringFilter()
        {
            DataTable dt = new DataTable();
            var query = from r in dt.AsEnumerable()
                        where r.Field<string>(0).Substring(1, 3) == "888"
                        select r;
            foreach (var r in query)
            { 
            }
        }
2分
不用linq的话
也可以循环行,取出ID列,ToString().SubString(1,3)
引用 2 楼 Z65443344 的回复:

不用linq的话
也可以循环行,取出ID列,ToString().SubString(1,3)

不想用这种
1楼可以 
有没有能直接DataTable.Select(的写法?

3分
ID like “”_888%””
试试
2分
LS几个都可以…LZ最好还是在取数据的时候筛选一下更好
2分
DataTable.Select(” id like “”_888%”” “),返回的是datarow[]
3分
select方法中下划线”_”通配符是不行滴
20分
dt.Select(“SubString(ID,2,3)=””888″””);
引用 8 楼 zyl_leilei 的回复:

dt.Select(“SubString(ID,2,3)=””888″””);

我开始用的dt.Select(“substr(ID,2,3)=””888″””);报错了 知道这两个的区别吗


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明DataTable中如何截取字符串筛选?
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!