我有这个文件,其中包含控制字符,如十进制29,30。在记事本++中,它们分别出现在GS,RS中。在C#中我正在做一个File.ReadAllLines ...然后对于每一行,我需要在这些控制字符上拆分整行。
让我们说我有一条线:
... 1RSACCTGS2RS718GS3RS425
我期望的元素是1,ACCT,2,718,3,425 ......
我的意思是我可以将该行放入toCharArray然后检查每个char是否为控件,如下所示:
if(char.IsControl(c))但我不认为效率太高。一个正则表达式会很好我想但不知道如何写它。有什么想法吗?
谢谢,
大卫
答案 0 :(得分:0)
使用string.Split
方法,并传递一个您想要拆分的控制字符数组:
// Add other special characters on which you'd like to split to the array below
var tokens = line.Split(new[] {(char) 29, (char) 30});
现在tokens
包含原始行的子字符串数组,这些子字符串由特殊字符分隔。连续多个特殊字符将被忽略。