很有难度的字符匹配谁能解决

红皮猴 2006-08-04 03:30:46
我要把字符串里面的以$开头空格或者,结尾的字符取出来存到数组里
列如:str="asdasdasd$aa,vvv$b wwh=$ssk" 然后要从str里面把$aa,$b,$ssk取出来存入数组

这个要怎么弄
...全文
93 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
www_123du_com 2006-08-04
  • 打赏
  • 举报
回复
@"\$[a-zA-Z]*( |,|$)"
后面的"$"就是用来匹配结尾的呀。你真的试了的吗?
红皮猴 2006-08-04
  • 打赏
  • 举报
回复
这个式子还有一 中情况没考虑那就是$ssk后面既没空格又没,的情况
红皮猴 2006-08-04
  • 打赏
  • 举报
回复

www_123du_com 2006-08-04
  • 打赏
  • 举报
回复
用的我的?
不可能吧,我自己测试都能取出来。
红皮猴 2006-08-04
  • 打赏
  • 举报
回复
测试了但是还有点问题就是str="asdasdasd$aa,vvv$b wwh=$ssk"中的$ssk取不出来
红皮猴 2006-08-04
  • 打赏
  • 举报
回复
我对正则式不熟,所以先试楼上的
buer(基础训练) 肯定不行,因为这些字符我是不知道的,我就是要把他们从str里面找出来
www_123du_com 2006-08-04
  • 打赏
  • 举报
回复
string str="asdasdasd$aa,vvv$b wwh=$ssk";
MatchCollection mc = Regex.Matches(str,@"\$[a-zA-Z]*( |,|$)");
foreach (Match m in mc)
{
string s = m.Value.Replace(",","").Replace(" ","");
}
buer 2006-08-04
  • 打赏
  • 举报
回复
string str="asdasdasd$aa,vvv$b wwh=$ssk";
ArrayList ar=new ArrayList();
if(str.IndexOf("$aa")>=0)
ar.Add("$aa");
else if(str.IndexOf("$b")>=0)
ar.Add("$b");
else if(str.IndexOf("$ssk"))
ar.Add("$ssk");
红皮猴 2006-08-04
  • 打赏
  • 举报
回复
我的字符串可能有上万个字符这样做效率低呀
wen_ma 2006-08-04
  • 打赏
  • 举报
回复
简单的字符串函数,先找"$",截取“aa,vvv$b wwh=$ssk”,然后在这个字符串中找第一个",",和" ",如果都找到,则比较两者的位置,“,”是3,“ ”是9,取小的一个,截取aa,存入数组
。后面的依次类推
红皮猴 2006-08-04
  • 打赏
  • 举报
回复
没人知道吗

62,046

社区成员

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

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

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

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