[英]Regular Expression to split string
我試圖解析下面的字符串:
*一種。 BOSCOLO1,4,JA STARR2,N。LUNARDI4,C.ORI4,JP BENNETT,Jr3,V。JEVTOVIC-TODOROVIC2,3,4,
預期產量如下:
*一種。 BOSCOLO1,4
JA STARR2
N. LUNARDI4
C. ORI4
JP BENNETT,Jr3
V. JEVTOVIC-TODOROVIC2,3,4
我不能在分隔符(,)上拆分它們,因為它不一致。 以上是名稱后跟一個或多個數字。 單詞后跟數字和逗號直到下一個單詞,並且不允許任何沒有任何數字的名稱。
我不知道如何編寫REGEX。 任何幫助將受到高度贊賞。
謝謝
您可以使用這樣的正則表達式:;
[*A-Z]\D+\d+(,\d+)*
例:
string data = "*A. BOSCOLO1,4, J. A. STARR2, N. LUNARDI4, C. ORI4, J. P. BENNETT, Jr3, V. JEVTOVIC-TODOROVIC2,3,4,";
MatchCollection matches = Regex.Matches(data, @"[*A-Z]\D+\d+(,\d+)*");
foreach (Match x in matches) {
Console.WriteLine(x);
}
輸出:
*A. BOSCOLO1,4
J. A. STARR2
N. LUNARDI4
C. ORI4
J. P. BENNETT, Jr3
V. JEVTOVIC-TODOROVIC2,3,4
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.