在C#中,有没有办法告诉Regex.Replace有多少替换品?

时间:2012-12-20 11:22:20

标签: c# .net regex

  

可能重复:
  Count regex replaces (C#)

有没有办法说出Regex.Replace(...)来电有多少替换?

3 个答案:

答案 0 :(得分:5)

您可以使用Regex.Replace Method (String, String, MatchEvaluator)重载并使用自定义MatchEvaluator建立计数。

您可以这样做:

int count = 0;
string newStr = Regex.Replace(origStr, regexStr, m => { count++; return "replacement"; });

答案 1 :(得分:3)

could do

Regex.Matches(...).Count;

第一

答案 2 :(得分:0)

您可以使用Regex.Replace方法的this version

public string Replace(
    string input,
    MatchEvaluator evaluator
)

public static string evaluator(Match match)
{
    // handle matches count here
}