我想获得这样的字符串的所有数字:
"0" => Groups = "0"
"1 2-3" => Groups = "1", "2", "3"
"45i6" => Groups = "4", "5", "6"
我正在使用此代码:
var pattern = @"(\d)";
var m = System.Text.RegularExpressions.Regex.Match(value, pattern);
if(m.Success)
{
foreach (var gp in m.Groups)
{
Console.WriteLine(gp);
}
}
你能帮助我获得好的模式吗?
非常感谢
好的,好的代码是:
谢谢Daniel
我正在使用此代码:
var pattern = @"(\d)";
var ms = System.Text.RegularExpressions.Regex.Matches(value, pattern);
if(ms.Count > 0)
{
foreach (var m in ms)
{
Console.WriteLine(m);
}
}
答案 0 :(得分:3)
你想做Matches
。您将只有一个具有该模式的组。
答案 1 :(得分:3)
如果你没有停留在正则表达式上,那么更直接的方法是:
var digits = someString.Where(c => char.IsDigit(c)).ToArray();