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 Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: