2013-06-22 21 views
1

我必须将一个字符串拆分为一个数组,分割在\ r \ n上。我想用正则表达式,但以下包括在开始时或在字符串末尾任何\ r \ n为使用RegEx在c中分割一个复杂的字符串#

RegEx.Split(stringIn, @"\r\n") 

我传递在貌似字符串:

"\r\n4:\r\n:20:00412\r\n:21:123456/DEV\r\n:13C:/A234567Z/1359+0100\r\n:32A:\r\n" 

所以这需要输出到一个数组为:

4: 
20:00412 
:21:123456/DEV 
. 
. 
:32A: 

+6

为什么不能.Split(Environment.NewLine,StringSplitOptions.RemoveEmptyEntries)? –

+0

删除我的答案,误解了你之后,对不起= D – Chris

回答

2

你可以Trim第E从您的串的两端不需要的字符使用Trim方法传递给它的分裂,这样才:

var trimmed = stringIn.Trim(new[] {'\n', '\r'}); 

现在Split的结果将不再有任何一端不想要的字符:

var tokens = RegEx.Split(trimmed, @"\r\n") 
+0

完美dasblinkenlight,我会通过一些测试,但迄今如此好 - 运行感谢 – CSharpNewBee