正则表达式从括号中获取数字?

时间:2015-02-15 18:46:37

标签: c# regex

我正在尝试从[556]中获取数字并尝试将变量存储在c#中。

我能够像556一样获取但是无法获取55 66

1 个答案:

答案 0 :(得分:0)

好的,因为这是一个很好的问题,我会提供答案。在正则表达式中,这只能通过\G anchor来实现。锚\G匹配上一场比赛结束的位置。

Regex rgx = new Regex(@"(?:\[|(?<!^)\G),?(\d+)(?=[^\[\]]*\])");

<强>代码:

String input = @"fo bar [55,66,67,748,484] buz 234 456";
Regex rgx = new Regex(@"(?:\[|(?<!^)\G),?(\d+)(?=[^\[\]]*\])");
foreach (Match m in rgx.Matches(input))
Console.WriteLine(m.Groups[1].Value);

IDEONE

Regex Demo