常量以c#中的回车符(CR)拆分字符串

时间:2013-11-21 14:34:13

标签: c# string tokenize

我正在尝试将字符串拆分为两个数组。

第一个数组在字符串的开头有数据,由\t(制表符)字符分隔,其余部分在第一个换行符(\n)之后。

我试过这个,认为这就是我想要的:

string[] pqRecords = pqRequests.ToString().Split('\n');

我也试过这个:

internal static readonly string segment = Environment.NewLine + "\t";
string[] pqRecords = pqRequests.ToString().Split(segment);

不幸的是Split方法只会占用一个字符。

我知道我的pqRequests字符串变量中有vbcr,因为当我将鼠标悬停在它上面并看到文本可视化时,第一行有标签,其他所有内容都在它自己的行上。

此数据来自txt文件,在文件中,当在Notepad ++中打开时,我可以看到CR个字符。

c#中是否有替代常量我应该用于这些CR字符?

2 个答案:

答案 0 :(得分:5)

string.Split will happily accept多个分隔符。你只需要将它们作为数组传递:

internal static readonly string segment = Environment.NewLine + "\t";
string[] pqRecords = pqRequests.ToString().Split(segment.ToArray());

当然,您可以(而且应该)更清楚地写出

internal static readonly char[] separators = new[] { '\n', '\t' };
string[] pqRecords = pqRequests.ToString().Split(separators);

答案 1 :(得分:2)

回车符由'\ r'表示,是你需要的吗?