dajjdaif 2014-11-30 12:09 采纳率: 100%
浏览 4844
已采纳

c# regex.split返回的数组中总是有空字符串

有一个文本文档,结果类似:
A******
A1111111
A5555555
A6666666
在多行匹配的时候,希望把文本分割开,但是每次返回的数组的第一个值,总是空,代码如下:
Regex REA = new Regex("A.*",RegexOptions.Multiline);
string b=REA(text);
比如应该返回4个成员成员的数组,但是返回的数组是5个成员,b[0]是一个空值,后面的一切正常,这是什么问题?
-----补充------
之所以用多行匹配,实际上是因为文本很长,应该是
A1213131313131
464616511131213
A13165416546131
16541561351213
...
A1612316513
216213216541641513213
这样的格式,每一个单元的前面标志是一样的,但是后面是跨行的文本,A有没有不是很重要。把A.*改成A[.\n]*之后,还是会返回一个空值。取得REA.length属性,得到的值,比实际值多1。

  • 写回答

3条回答 默认 最新

  • q107770540 2014-12-01 03:10
    关注
    var text=@"A1111111
    

    A5555555
    A6666666";

    Regex REA = new Regex("(A.*)",RegexOptions.Singleline);

    结果如下:

    A1111111
    A5555555
    A6666666

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?