Did you know that you can navigate the posts by swiping left and right?

Platzhalter in einem String ersetzen

17 Mar 2008 . Unknown . Comments

Die Frage kam am Wochenende bei Glengamoi auf: Man hat einen String "Lorem ipsum [[Parameter1=49;Parameter2=0815]] dolor sit amet", und möchte dabei den mit der doppelten eckigen Klammer eingeschlossenen Parameter auslesen und durch etwas neues ersetzen.

Da es hier um mein Lieblingsthema "Reguläre Ausdrücke" ging möchte ich meine Lösung hier auch noch mal notieren - dem Fragesteller hatte sie zumindest geholfen.

using System.Text.RegularExpressions;
…
string inputString = "Lorem ipsum [[Parameter1=1;Parameter=2]] dolor sit amet";
string paramString, resultString;
Regex r = new Regex(@"[[(?<param>.*)]]", RegexOptions.IgnoreCase | RegexOptions.Singleline );
Match m = r.Match( inputString );
paramString = m.Groups["param"].Value;
// Hier den Inhalt von paramString prüfen und durch das Gewünschte ersetzen
resultString = Regex.Replace(inputString, @"[[.*]]", paramString, RegexOptions.Singleline | RegexOptions.IgnoreCase);

Eigentlich ganz simpel ... aber nicht jeder freundet sich gerne mit RegEx an. :-)

Questions/Suggestions
As always, for questions or feedback, contact me or leave a comment.

Octocat by GitHubEdit this page on GitHub