Replace multiple strings in a single pass with C#

static string MultipleReplace(string text, Dictionary replacements)

 {

     return Regex.Replace(text, “(” + String.Join(“|”, adict.Keys.ToArray()) + “)”, delegate(Match m) { return replacements[m.Value]; } );

}

// somewhere else in code

string temp = “Jonathan Smith is a developer”;

adict.Add(“Jonathan”, “David”);

adict.Add(“Smith”, “Seruyange”);

string rep = MultipleReplace(temp, adict);

(Source:  http://metadeveloper.blogspot.com/2008/06/regex-replace-multiple-strings-in.html)

Leave a comment