我有一个简单的字符串:
data1:abc,123,xyz,data2:hello,goodbye
我需要正则表达式返回以下项的匹配集合:
abc
123
xyz
在过去,我会使用正则表达式来做到这一点:
data1:(.*)data2:
然后在逗号上分割输出。
有没有一种方法可以将其作为一个正则表达式而无需外部代码呢?
最佳答案
尝试这个
String text = "data1:abc,123,xyz,data2:hello,goodbye";
Regex reg = new Regex(@"(?<=data1:.*)[^,]+(?=.*data2)");
MatchCollection result = reg.Matches(text);
foreach (var item in result) {
Console.WriteLine(item.ToString());
}
输出:
abc
123
y
关于c# - 在比赛中比赛,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9704515/