<p>I have a bit of code that looks like this:</p>

<pre><code>text = reg.Replace(text, new MatchEvaluator(MatchEvalStuff));
</code></pre>

<p>I need to pass in a 2nd parameter like this:</p>

<pre><code>text = reg.Replace(text, new MatchEvaluator(MatchEvalStuff, otherData));
</code></pre>

<p>Is this possible, and what would be the best way to do this?</p>

MatchEvaluator is a delegate so you can't change its signature.  You can create a delegate that calls a method with an additional parameter.  This is pretty easy to do with lambda expressions:
```
```
text = reg.Replace(text, match => MatchEvalStuff(match, otherData));
```
```