我正在用C#练习正则表达式.这是我的代码:
string test =
"this is whole new line, with different parameters 10.1.2.1, 10.1.5.1, 10.1.3.1";
string a = Regex.Match(test, "10.[0-9].[0-9]+.[0-9]+").Value;
Console.WriteLine(a);
Run Code Online (Sandbox Code Playgroud)
结果是10.1.2.1.它找到第一场比赛就是这样.
如何递归执行此功能?我是否需要添加一些额外的代码,或者是否有一个正则表达式类,它具有内置函数(我更喜欢)?
Fre*_*örk 10
您使用该Match方法明确要求只匹配一个匹配项.您应该使用Matches,并迭代结果:
string test = "this is whole new line, with different parameters 10.1.2.1, 10.1.5.1, 10.1.3.1";
foreach(Match result in Regex.Matches(test, "10.[0-9].[0-9]+.[0-9]+"))
{
Console.WriteLine(result);
}
Run Code Online (Sandbox Code Playgroud)
该代码将打印以下内容:
10.1.2.1
10.1.5.1
10.1.3.1
Run Code Online (Sandbox Code Playgroud)