2014-02-26 84 views
0

我试图用regex_replace在C#C#正则表达式替换路径

这是我的琴弦

my\old\path\Win32\my.dll 
my\old\path\Win64\mydll2.dll 

我试图用

my\new\path\Win32Release\my.dll 
my\new\path\Win64Release\mydll2.dll 

这是怎么来取代它们我这样做,并没有在C#中工作,但在记事本中工作++

Regex.Replace(test, @"\bmy\\old\\(.*)\\[a-z]+([0-9]{2})\\((.*)+\.[a-z]{3})\b", @"my\\new\\path\\Win\2Release\\\3") 
+0

不要误会我的意思IM正则表达式的一个巨大的情人,但我在这种情况下,估计使用string.replace()会简单得多吗? – Srb1313711

+0

你不要匹​​配整个字符串,只是你想要改变的部分 –

回答

2

您的模式不起作用,因为您忘记了使其不区分大小写。您可以在模式的开头添加(?i)或使用RegexOptions.IgnoreCase

1

取代:

\\Win(..)\\ 

有:

\\Win($1)Release\\