代码如下:
DataTable.Select(" name like '/////%/10000//////////////////////' " )报错信息为:
Like 运算符中出错: 字符串模式“/////%/10000//////////////////////”无效。请大家指点下。
DataTable.Select(" name like '/////%/10000//////////////////////' " )报错信息为:
Like 运算符中出错: 字符串模式“/////%/10000//////////////////////”无效。请大家指点下。
sqlserver能通过 就是asp.net里,报错啊。
可以考虑改用Linq to object.
能否写个linq to object 的例子?
dt.Columns.Add("ID", typeof(string));
dt.Columns.Add("书名", typeof(string));
dt.Rows.Add("10001", "C#程序设计语言");
dt.Rows.Add("10002", "c#面向对象程序设计");
dt.Rows.Add("10003", "多媒体技术");
dt.Rows.Add("10004", "C#面向对象编程");
DataRow[] rows = dt.Rows.Cast<DataRow>().Where(row => Regex.IsMatch(row["书名"].ToString(), @"(?i)C#.+?对象")).ToArray();
foreach (DataRow row in rows)
Response.Write(row["书名"].ToString() + "<br/>");
用Linq+正则,这个正则相当于"C#%对象%".
输出:
c#面向对象程序设计
C#面向对象编程
谢谢你的讲解。
假如我想匹配下面的效果,请问该怎么实现?
DataTable.Select(" name like '/////%/[100000,100001,100005]//////////////////////' " )'/////%/100000//////////////////////'
'/////%/100001//////////////////////'
'/////%/100005//////////////////////'这3种情况都是我需要的