MatchEvaluator evaluator = (match) =>
{
var splitPos = match.Value.IndexOf("=\"");
var newValue = match.Value.Substring(0, splitPos + 2) +
"RetrieveBuildFile.aspx?file=" +
prefix +
match.Value.Substring(splitPos + 2);
return newValue;
};
这段代码是什么意思,我需要将VS 2008中的这段代码移植到VS 2005,同样的代码在VS 2005中不可用
c# 2.0 支持delegate
关键字,因此可以重写为:
MatchEvaluator evaluator = delegate(Match match) {
int splitPos = match.Value.IndexOf("=\"");
string newValue = match.Value.Substring(0, splitPos + 2) +
"RetrieveBuildFile.aspx?file=" +
prefix +
match.Value.Substring(splitPos + 2);
return newValue;
};
这和这个完全一样:
static string OnEvaluator(Match match) {
int splitPos = match.Value.IndexOf("=\"");
string newValue = match.Value.Substring(0, splitPos + 2) +
"RetrieveBuildFile.aspx?file=" +
prefix +
match.Value.Substring(splitPos + 2);
return newValue;
}
调用:
MatchEvaluator evaluator = OnEvaluator;
它是什么?
MSDN:表示在 Replace 方法操作期间每次找到正则表达式匹配时调用的方法。
http://msdn.microsoft.com/en-us/library/system.text.regularexpressions.matchevaluator.aspx http://msdn.microsoft.com/en-us/library/system.text.regularexpressions.matchevaluator.aspx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)