1. 程式人生 > >使用Regex.Replace()進行字串的替換

使用Regex.Replace()進行字串的替換

//將正則表示式匹配的不同部分,用同一字串替換,並返回替換後的結果
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);
輸出結果: