关于截取字符串的问题

月之点点 2010-11-23 02:00:44
例如:
string a="1111{aaaaaa}222fe22{bbbbbb}333dq33{cccccc}3dwqdwq444....."
有很多{} 带有这样的值!我现在要把他们从字符串里提取出来并且存放到 ArrayList 里面

arraylist 里面的值为
aaaaaa 下标0
bbbbbb 下标1
cccccc 下标2
......
......
等等


裸体跪求 好的解决方案!200分
...全文
457 56 打赏 收藏 转发到动态 举报
写回复
用AI写文章
56 条回复
切换为时间正序
请发表友善的回复…
发表回复
脾气不坏 2010-11-23
  • 打赏
  • 举报
回复
今个几个大大们难得啊 能聚到一个贴里
tanrenzong1986 2010-11-23
  • 打赏
  • 举报
回复

string str = "{$productlist,13,0,12,27,4,0,1,4, <div class=""service_1_1}";
int start=str.indexof('{');
int end=str.lastindexof('}');
string NewStr=str.SubString(start+1,end-start).trim('}');
ArrayList myArr=new ArrayList();
string[] StrArr=NewStr.split('{');
foreach(string s in StrArr)
{
MyArr.add(s);
}
wshsba 2010-11-23
  • 打赏
  • 举报
回复

菜鸟围观
up
kofkyo 2010-11-23
  • 打赏
  • 举报
回复
好多牛人啊
Issac25Name 2010-11-23
  • 打赏
  • 举报
回复
真晕,上面的大师们也忒牛X了吧!
Tanhualin 2010-11-23
  • 打赏
  • 举报
回复
八仙过海啊...围观膜拜
wackyboy 2010-11-23
  • 打赏
  • 举报
回复
 //不用正则
string str = @"{$productlist,9,0,12,27,4,0,1,4, <div class=""service_1_1""><a href=""#{$url}.html"" class=""anli"">{$name}</a></div> <div class=""service_1_2"">{$explain}...</div> $} </div> <!-- 2 --> <div class=""service_2""> {$productlist,9,0,12,27,4,0,1,4, <div class=""service_2_1""><img src=""http://192.168.1.69:92/uploadfile/{$smallImg}"" /></div> $}";
while (str.IndexOf("{$")>=0)
{
str = str.Substring(str.IndexOf("{$")+2);
string s = str.Substring(0, str.IndexOf("$}"));
Console.WriteLine(s);
str = str.Substring(str.IndexOf("$}") + 2);
}

 // 正则
Regex.Matches(input,@"(?<=\{\$)((?!\$\}).)+");
wackyboy 2010-11-23
  • 打赏
  • 举报
回复
{$$}内容有没有嵌套?
GUNDAMGENIUS 2010-11-23
  • 打赏
  • 举报
回复
八仙过海啊...围观膜拜
月之点点 2010-11-23
  • 打赏
  • 举报
回复
疯掉ying
月之点点 2010-11-23
  • 打赏
  • 举报
回复
[Quote=引用 42 楼 gahyyai 的回复:]
好用啊。。0.0!截出来不是我想要的。。。
[/Quote]
-。-!你敢不复制我的话吗。。。
冰岛男孩 2010-11-23
  • 打赏
  • 举报
回复
好用啊。。0.0!截出来不是我想要的。。。
月之点点 2010-11-23
  • 打赏
  • 举报
回复
不好用啊。。0.0!截出来不是我想要的。。。
兔子-顾问 2010-11-23
  • 打赏
  • 举报
回复
不用正则20楼那经典的代码还不行?
月之点点 2010-11-23
  • 打赏
  • 举报
回复
[Quote=引用 37 楼 mandys 的回复:]
嗯嗯,真的是人多,力量大。
[/Quote]

对啊。。。
月之点点 2010-11-23
  • 打赏
  • 举报
回复
{$阿斯蒂萨达$}里面的内容绝对会 用这个{$ $}括起来。。


@"(?sx)(?<={\$)((?!\$\}).)+(?=\$})");
我怎么传参啊。。{\$ 都带个斜杠。。我去掉了就报错了


最好不要用正则。。。要截取字符串的那种。。
美国服务器上有限制。。。。不让用。。。很郁闷。。。
Mandys 2010-11-23
  • 打赏
  • 举报
回复
嗯嗯,真的是人多,力量大。
Mr-Jee 2010-11-23
  • 打赏
  • 举报
回复
[Quote=引用 34 楼 shijianyu00 的回复:]

引用 33 楼 cj205 的回复:
C# code
string str = @"{$productlist,13,0,12,27,4,0,1,4, <div class=""service_1_1""><a href=""#{$url}.html"" class=""anli"">{$name}</a></div> <div class=""service_1_2"">{$explain……
[/Quote]
什么叫不能传参?

我的正则里面放$的变量是没问题的。我截取的是{$开头$}结尾的~
兔子-顾问 2010-11-23
  • 打赏
  • 举报
回复
规则比正则重要,你不要自己总结规律,因为你总结的不一定对。否则回答你的都无法解决你的问题。

$$之间,你上面的$是否会成对出现?如果是的,那一次匹配就是所有你的字符了。
加载更多回复(33)

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧