您的位置:首页 > 其它

使用Regex.Replace()进行字符串的替换

2016-01-15 22:37 465 查看
//将正则表达式匹配的不同部分,用同一字符串替换,并返回替换后的结果
public static string Replace(string input, string pattern, string replacement);
//将正则表达式匹配的不同部分,用<span style="font-family: Arial, Helvetica, sans-serif;">MatchEvaluator委托返回值依次替换</span><span style="font-family: Arial, Helvetica, sans-serif;">,并返回替换后的结果</span>
public static string Replace(string input, string pattern, MatchEvaluator evaluator);
//<span style="font-family: Arial, Helvetica, sans-serif;">MatchEvaluator委托</span>
public delegate string MatchEvaluator(Match match);


实例:

string input = "1a2b3";
string pattern = "([0-9]+)";
//将input中的数字全部替换为@
string val1 = Regex.Replace(input, pattern, "@");
Console.WriteLine(val1);
//将input中的数字全部填充为2位
string val2 = Regex.Replace(input, pattern, m => Convert.ToInt32(m.Groups[1].Value).ToString("00"));
Console.WriteLine(val2);
//将input中的数字替换为指定的值
string val3 = Regex.Replace(input, pattern, m =>
{
switch (m.Groups[1].Value)
{
case "1":
return "A";
case "2":
return "B";
case "3":
return "C";
default:
return "D";
}
});
Console.WriteLine(val3);输出结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: