正则表达式替换为包含原始

时间:2015-06-19 19:15:06

标签: c# regex

Regex可以用另一个包含原始字符的字符串替换字符串中的模式吗?例如:

  

X(#2( 3 )) - > X([0-9] { 3 })[0-9] *

     

X(#6( 1 )) - > X([0-9] {的 1 })[0-9] *

     

X(#9( 4 )) - > X([0-9] {的 4 })[0-9] *

在每种情况下,粗体数字都放在新字符串中。这可能与Regex有关吗?如果没有,那么什么是有效的解决方案?

1 个答案:

答案 0 :(得分:1)

是的,使用捕获组可以使用正则表达式。

Regex.Replace(str, @"X\(#\d+\((\d+)\)\)", "X([0-9]{$1})[0-9]*");

DEMO