当我尝试将模式与将成功返回为假的字符串匹配时,我的代码中出现了这个问题...我用来测试表达式的站点是http://regexhero.net/tester/
在我们进入代码之前有一点背景知识:我正在使它尽可能通用。有一些路径可能会在此过程中产生额外的 ',因此为了清除它,如果在清理它的路径中\
有两个以上的 ',我首先使用正则表达式进行处理。\
这样做的问题是,一些路径,因为它们来自服务器\
,在路径名中有四个(只有两个\
经常,但由于它的 C# 编译器希望它是四个\
),因此第二步是在路径的开头添加额外的两个\
来满足一切并使事情变得更好。
这是我将使用的路径示例,因此您有一个想法:
\\\\moon\Release_to_Eng\V11\Client
这是我的代码:
//pass over the value of what the user selected into the global variable
GlobalVars.strPrevVersion = GlobalVars.strDstPath + "\\" + cboVerPath.Text;
//if there are more than two \'s in the path then replace them
GlobalVars.strPrevVersion = Regex.Replace(GlobalVars.strPrevVersion, @"\\{2,}", "\\");
//check to see if there are two \'s at the begining of the path name
Match match = Regex.Match(GlobalVars.strPrevVersion, @"^\\\\");
//if there are two \'s in the begining of the path name then add two more.
if (match.Success) << THIS is where it goes wrong the Success returns false even though it should match
{
GlobalVars.strPrevVersion = @"\\" + GlobalVars.strPrevVersion;
}