我想在C#中使用正则表达式将1添加到列表的最后一个int: “ 10,20,30”->“ 10,20,31”
这是为了测试$ 1是否按预期工作:
Regex.Replace("10, 20, 30", @"(\d+)$", "-$1-")
10, 20, -30-
这是为了测试演员阵容是否按预期工作:
Regex.Replace("10, 20, 30", @"(\d+)$", (int.Parse("30")+1).ToString())
10, 20, 31
最终的完整代码不起作用:
Regex.Replace("10, 20, 30", @"(\d+)$", (int.Parse("$1")+1).ToString())
input string was not in a correct format
为什么在转换时不解释$ 1?
答案 0 :(得分:1)
LasseVågsætherKarlsen给出了正确的答案。有关详细信息,请参阅问题评论。
Regex.Replace("10, 20, 30", @"(\d+)$",ma => (int.Parse(ma.Value)+1).ToString())
10, 20, 31