我想像下面这样拆分一个datatable的列
Message
--------
PR-111: test message
PR-112 - test message new
PR-113 : test message new2
它应该像下面这样拆分成一个datatable
PRNumber Message
------ -----------
PR-111 test message
PR-112 test message new
PR-113 test message new2
注意:在以下项之前和之后可能有空格:或─
我已经尝试了下面,但没有给出适当的结果
var r = dt1.AsEnumerable().Select(g => new {
PRNumber = g["Message"].ToString().Contains(":") == true ? g["Message"].ToString().Split(':')[0] : g["Message"].ToString().Split('-')[0],
Message = g["Message"].ToString().Contains(":") == true ? g["Message"].ToString().Split(':')[0] : g["Message"].ToString().Split('-')[1]
}).ToList();
有人能帮忙吗?
1条答案
按热度按时间bzzcjhmw1#
因为你想创建一个包含两列的
DataTable
,你应该先创建它:现在一个简单的
foreach
是填充它的最佳方法,LINQ不能帮助你: