Regulärer Ausdruck "Alles außer"

nathanaelj

Grünschnabel
Hallo,

ich weiß nicht ob die Frage hier an der richtigen Stelle steht, weiß aber auch nicht wo sie besser hinpassen würde.

Ich möchte einen String durchsuchen der folgendes Muster enthält.

Code:
<Variable TEST="abc"

Was davor und dahinter steht ist mir egal. Es soll mit
Code:
<Variable TEST="
anfangen. Und mit
Code:
"
wieder aufhören.

Dazwischen darf alles stehn. (außer natürlich das Anführungszeichen).

[^"] reicht mir nicht aus weil es nicht nur ein zeichen ist sondern beliebig viele.

Ich muss irgendwie festlegen das das ganze durch ein Anführungszeichen begrenzt ist.
Wie viele Zeichen dazwischen stehn ist nicht festgelegt.

^ und $ kann ich dafür meiner Meinung nach leider nicht benutzen, da der string nicht damit anfängt und aufhört sondern nur das was ich suche.

Wäre schön wenn ihr mir helfen könntet

NJ
 
Zuletzt bearbeitet:

Turri

Erfahrenes Mitglied
Hallo,

hier können beliebige Zeichen zwischen den " " stehen.

C#:
string g = "<Variable TEST=\"abc\">";
Regex r = new Regex("<Variable TEST=\"(.*?)\""); 
if (r.IsMatch(g))
   Console.WriteLine(r.Match(g).Groups[1].Value);
 

nathanaelj

Grünschnabel
Danke,
ein paar minuten zu spät :)
habs mittlerweile so gelöst:

Code:
Regex.Replace(XmlAll, "<Variable " + puffer + "=\"([^\"]{1,})\""