请大家帮忙写一个正则表达式,谢谢大家啦。

ssjywhr 2012-10-09 11:17:28
([30204]+[30604])*2.5
([5004]+[30901]-[6673])+[674]*2.5
现在需要从上述类型的字符串中,匹配出方括号及其面的数字(如果一个字符串中有多个方括号和数字,则用逗号将它们分隔)。
每个字符串中的方括号数量不固定。
请问这个正则表达式要怎么写呢,请大家帮帮我啊。
谢谢啦!
...全文
103 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2012-10-09
  • 打赏
  • 举报
回复
string result = string.Join(",", Regex.Matches("([5004]+[30901]-[6673])+[674]*2.5", @"\[\d+\]").Cast<Match>().Select(x => x.Value).ToArray());
enaking 2012-10-09
  • 打赏
  • 举报
回复
string result = string.Join(",", Regex.Matches("([5004]+[30901]-[6673])+[674]*2.5", @"\[\d+\]").Cast<Match>().Select(x => x.Value).ToArray());
threenewbee 2012-10-09
  • 打赏
  • 举报
回复
是C# 2008以上么?
q107770540 2012-10-09
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
([30204]+[30604])*2.5
([5004]+[30901]-[6673])+[674]*2.5
现在需要从上述类型的字符串中,匹配出方括号及其面的数字(如果一个字符串中有多个方括号和数字,则用逗号将它们分隔)。
每个字符串中的方括号数量不固定。
请问这个正则表达式要怎么写呢,请大家帮帮我啊。
谢谢啦!
[/Quote]
\[\d+?\]
ssjywhr 2012-10-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
string result = string.Join(",", Regex.Matches("([5004]+[30901]-[6673])+[674]*2.5", @"\[\d+\]").Cast<Match>().Select(x => x.Value).ToArray());
[/Quote]

在这里报错了啊。
Cast<Match>().

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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