Nun möchte ich mit den Regex erreichen, dass zwischen dem [[ und dem darauffolgenden ]] alle Htmltags gelöscht werden.
1) mit [[.*]] finde ich gar nichts 2) wenn ich z.B. nach <.*> suche erhalte ich auch immer alle Suchergebnisse mit der letzten > Klammer, also z.B. auch <span>blabla</span>, <span> und </span>, dabei möchte ich den ersten Treffer natürlich gar nicht haben
Als Ergebnis soll folgender String stehen bleiben:
... <p class=MsoNormal><span lang=EN-US style='mso-ansi-language:EN-US'>[[List:Doku/Test/BlaBlaBla|Just another Test]]<o:p></o:p></span> ...
Mit anderen dialekten der Regular Expressions komme ich dem Ergebnis schon sehr nah, .net kennt aber anscheinend den "non greedy" nicht
Um mal wieder was zur Antwort beizutragen und nicht unnötig herum zu editieren ;)
[[.*]] ist das Gleiche wie [\[\.\*]\] (in Worten: eines der Zeichen "[" "." oder "*" und danach das Zeichen "]") und somit (wie von Matthias bereits geschrieben) nicht wirklich das gewünschte. Damit findest Du z.B. ".]" oder "*]" im Text.
\[\[.*?\]\]
oder
\[\[[^]]*\]\]
findet die gewünschten Textstellen, wobei letzteres etwas schneller ist, dafür aber nicht so genau. Den Unterschied sieht man bei der Suche nach
Danke schon mal für die Antworten, aber wie bekomme ich es nun hin, dass die Tags zwischen den [[ und ]] entfernt werden. Da ich am WE nicht coden kann (bin unterwegs) habt Ihr auch noch ein wenig Zeit für eine Lösung ;-)
Also ich hab den Minuspunkt nicht vergeben. Bin mir auch nicht sicher, ob er dem Inhalt galt oder dem "formalen Fehler", eine Erweiterung der Frage in eine Antwort zu stecken. Aber viel zu coden gibt es da nicht, mobiles Internet hätte Dir völlig gereicht. Mit "msdn regex replace" führt Dich Google recht zielsicher zu http://msdn.microsoft.com/de-de/library/xwewhkd1.aspx