Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 5 von 5

Thema: Regular Expression (Replace) gesucht

  1. #1
    Registriert seit
    12.04.2010
    Beiträge
    300
    Danke
    22
    Erhielt 54 Danke für 52 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute,

    ich würde gerne folgendes - bedingt - ändern

    von
    <Parameter ID="p2001_objflags" Value="0" />


    auf
    <Parameter ID="p2001_objflags" Value="1" />


    Bedingung:

    z.B. alle "p2xxx
    und alle "p6xxx
    jedoch nicht die "p1xxx

    Ich schaffe es zwar mit Regular Exp die gewünschten Parameter zu finden, z.B.

    p22[0-f]{2}_objflags" Value="0"

    allerdings bekomme ich das ersetzen nicht hin ..., so wie im Screenshot gibt er mir direkt den Text [0-f].... in den Ausdruck ?!?!

    Ich verwende überigens "grepWin" .


    Danke schon mal
    bg
    bb
    Angehängte Grafiken Angehängte Grafiken
    Zitieren Zitieren Regular Expression (Replace) gesucht  

  2. #2
    Registriert seit
    29.03.2004
    Beiträge
    5.741
    Danke
    143
    Erhielt 1.687 Danke für 1.226 Beiträge

    Standard

    In Perl könnte man das so schreiben:
    Code:
    $s = "<Parameter ID=\"p2001_objflags\" Value=\"0\" />";
    
    $s =~ s/(<Parameter ID=\"p[26][0-9]{3}_objflags\" Value=)(\"[0]\")( \/>)/$1"1"$3/g;
    Die Escape Zeichen für die Anführungszeichen kann du bei deinem Programm so wie es im Screenshot aussieht weglassen.

  3. #3
    Registriert seit
    12.04.2010
    Beiträge
    300
    Danke
    22
    Erhielt 54 Danke für 52 Beiträge

    Standard

    Hallo Thomas,

    danke für deine Mühe.

    Leider kann ich deinen Vorschlag im Programm grepWin nicht umsetzen.

    Die Eingabe bewirkt nichts, das Programm kennt sich damit nicht aus...

    Verwende ich so wie von dir angedeutet $0 ($1, $2,... gibts nicht) bekomme ich den richtigen String ohne der Suchmaske zurück (die Suchmaske im String war ja das ursprüngliche Problem)

    Jetzt stellt sich noch die Frage wie ich den "1" gegen eine "0" getauscht bekomme ?

    Kennt jemand vielleicht grepWin ??

    Danke
    bg
    bb
    Angehängte Grafiken Angehängte Grafiken

  4. #4
    Registriert seit
    29.03.2004
    Beiträge
    5.741
    Danke
    143
    Erhielt 1.687 Danke für 1.226 Beiträge

    Standard

    Zitat Zitat von bits'bytes Beitrag anzeigen
    Die Eingabe bewirkt nichts, das Programm kennt sich damit nicht aus...

    Verwende ich so wie von dir angedeutet $0 ($1, $2,... gibts nicht) bekomme ich den richtigen String ohne der Suchmaske zurück (die Suchmaske im String war ja das ursprüngliche Problem)

    Jetzt stellt sich noch die Frage wie ich den "1" gegen eine "0" getauscht bekomme ?

    Kennt jemand vielleicht grepWin ??
    Ich habe mir jetzt nur mal die Screenshots mit den Beispielen von grepWin angesehen. Das sieht da zumindest so aus als ob es mit der Syntax von meiner Perl-Regex kompatibel ist.

    Bei meiner Regex ist die Syntax so:
    s/Suchmuster/Ersatzzeichenkette/

    Alles was im Suchmuster in runden Klammern () steht kommt bei matching in die Variable $1, was in der zweiten runden Klammer in $2 usf.
    Das scheint bei deinem Programm auch zu funktionieren.

    Imho müsstest du in die obere Zeile:
    Code:
    (<Parameter ID="p[26][0-9]{3}_objflags" Value=)("[0]")( />)
    und in die untere:
    Code:
    $1"1"$3
    schreiben.

    Die [0] habe ich nur in eckige Klammern genommen, um dort evtl. noch andere Zahlenwerte als erlaubt einzutragen.

  5. #5
    Registriert seit
    12.04.2010
    Beiträge
    300
    Danke
    22
    Erhielt 54 Danke für 52 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Thomas,

    vielen Dank - langsam wirds etwas klarer und habs mittlerweile auch hinbekommen, z.B.


    (<Parameter ID="p60[0-f]{2}_objflags" Value=)("1")( />)

    $1"0"$3

    Sehr verwirrend aber cool

    mercy & bg
    bb

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 17.09.2011, 16:11
  2. Probleme mit Scl funktion Replace
    Von RMLIF im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 23.01.2011, 07:37
  3. FB9 gesucht
    Von SPS_NEU im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 24.09.2009, 21:01
  4. S7 - 212 gesucht ...
    Von smartie im Forum Suche - Biete
    Antworten: 2
    Letzter Beitrag: 31.03.2006, 14:29
  5. Gesucht: S5-CPU 928
    Von PeterEF im Forum Suche - Biete
    Antworten: 2
    Letzter Beitrag: 03.01.2005, 07:30

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •