首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在比赛中进行比赛

在比赛中进行比赛
EN

Stack Overflow用户
提问于 2012-03-14 23:03:08
回答 2查看 163关注 0票数 2

我有一个简单的字符串:

代码语言:javascript
复制
data1:abc,123,xyz,data2:hello,goodbye

我需要regex返回一个匹配的集合:

代码语言:javascript
复制
abc
123
xyz

在过去,我会使用正则表达式:

代码语言:javascript
复制
data1:(.*)data2:

然后在逗号上拆分它的输出。

有没有一种方法可以作为一个正则表达式而不需要外部代码来实现?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-14 23:33:23

尝尝这个

代码语言:javascript
复制
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

xyz

票数 2
EN

Stack Overflow用户

发布于 2012-03-14 23:11:09

不确定,但你可以这样做

代码语言:javascript
复制
String s="data1:abc,123,xyz,data2:hello,goodbye "
sttring[] slst= s.split(":");

for (int i = 0;i<slst.lemgth;i++)
{
 string[] inr = slst[i].split(",");
 for (int j = 0;j<inr.lemgth;j++)
 {
   if((inr.IndexOf("data") != -1)
    continue;
    //your code  
 }
} 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9704515

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档