Announcement

Collapse
No announcement yet.

kleines Problem mit RegularExpression

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • kleines Problem mit RegularExpression

    Hallo zusammen,
    ich habe ein kleines Problem mit einer RegularExpression in meinem Programm. Es ist nicht unbedingt ein Problem von C# aber ich hab jetzt keinen anderen Platz für das Thema gefunden.

    Ich habe eine Expression die mir aus einem Text alle Stellen heraussucht, die von "@@" eingeschlossen sind. Diese Platzhalter werden dann im Code durch Werte (zb, eine ID) ersetzt.
    Das funktioniert soweit auch ganz gut.

    Hier die definition der RegEx:
    [highlight=c#]
    Regex r = new Regex(@"@@[^\s]*\.[^\s]*@@");
    [/highlight]

    Jetzt hab ich aber in meinem Text eine Stelle wo zwei Platzhalter nur getrennt von "/" aufeinander folgen. Hier trifft die RegEx dann nicht mehr beide Platzhalter einzeln sondern beide als einen Großen.

    Hier mal mein Beispieltext:
    Bestellliste Einkauf Datum: 04.03.10

    @@.belegnummer@@ @@kadr.Firma1@@
    Liefertermin: @@ab_daten.Liefer_KW@@/@@ab_daten.Jahr@@
    Bearbeiter: Hr. @@bearbeiter.Nachname@@

    beim Rot markierten Text trifft die RegEx nicht, bzw. nicht wie ich es gern hätte.

    Hat jemand vielleicht eine Ahnung, wie ich das beheben kann?

  • #2
    Versuch

    (@@.*@@[/\s])

    Die Teile solltest du dann in group 0 und 1 finden

    http://www.fileformat.info/tool/regex.htm
    Christian

    Comment


    • #3
      Nein, das trifft auch nicht richtig. Es hat mich aber auf eine andere Idee gebracht.

      @@[^\s]*?@@

      Das trifft dann alle so, wie ich es gerne hätte.

      Danke Christian

      Comment

      Working...
      X