我正试图将一个字符串拆分为两个数组。
第一个数组的数据位于字符串的开头,由t
(tab)字符分割,其余部分位于第一个换行符(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字符?
string.Split
将很乐意接受多个分隔符。你只需要把它们作为一个数组传入:
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);
回车符用'\r'表示,这就是您需要的吗?