如何使用LINQ拆分字符串
我使用字符串来存储国家代码及其成本中心代码值。 我希望通过使用LINQ查询来解除字符串 和; 字符。 srting是
IND|001;TWN|002;USA|003;LDN|;MYS|005;
请帮我用LINQ溢出字符串值
我假设您需要一个Tuple
作为输出。
var myString = "IND|001;TWN|002;USA|003;LDN|;MYS|005;"; var objects = myString.Split(';').Where(x=>!string.IsNullOrEmpty(x)).Select (x => x.Split('|')).Select (x => Tuple.Create(x[0],x[1])).ToList();
结果:
IND 001 TWN 002 USA 003 LDN MYS 005
而不是LINQ使用String.Split
。
string s = "IND|001;TWN|002;USA|003;LDN|;MYS|005;"; string[] splitData = s.Split(new string[] { "|", ";" }, StringSplitOptions.RemoveEmptyEntries);
你可以用这个:
string temp= "IND|001;TWN|002;USA|003;LDN|;MYS|005; IEnumerable returnList = temp.Split(';') .Where(g=>!String.IsNullOrEmpty(g)) .Select(c => c.Substring(0, c.IndexOf('|')) + c.Substring(c.IndexOf('|') + 1));