Regex表达式的数学表达式

And*_*man 1 .net c# regex

我有很多文本行,我必须找到一些行,并更改它们.

我写了这样的正则表达式规则:

^(Position) ([0-9]+)$
Run Code Online (Sandbox Code Playgroud)

例如,我必须找到所有这些行:

位置10
位置11
位置12

现在我必须将数字增加到5.如何通过Regex实现?我试着写这样的正则表达式规则:

$1 {$2+ 5}
Run Code Online (Sandbox Code Playgroud)

我需要得到结果:

位置15
位置16
位置17

但我得到了:

位置{10 +5}
位置{11 + 5}
位置{12 + 5}

use*_*107 5

正则表达式替换函数采用字符串或函数.你使用了字符串替换,所以只插入字符串.如果要进行整数运算,则需要使用replace with function方法.

http://msdn.microsoft.com/library/cft8645c(v=vs.80).aspx

这段代码不正确,它应该只显示它​​是如何完成的

 Regex.Replace("^(Position) ([0-9]+)$", ReplaceFunction);


 public string ReplaceFunction(Match m)  { return "Position " + (int.Parse(m.Groups[2].Value) + 5); };
Run Code Online (Sandbox Code Playgroud)