Ich gehe gerade den Regenechsen RegEx Kurs durch und bin bei Konditionalen Regulären Ausdrücken angekommen.
Wenn ich als Bedingung ein Subpattern gebe, wird dann nur überprüft, ob dieses gesetzt ist oder auch der Inhalt?
Folgendes Beispiel:
Mit dieser Zeichenkette:
Nun soll der Code eigentlich bewirken, dass es nur dann gefunden wird, wenn beide Namen die Gleichen sind. Doch kann ich den 2. Namen ändern und es wird immer noch erkannt, getestet mit Regex Coach.
Im Tutorial:
Regenechsen :: Ideas come true | Optionen, konditionales Regex, Assertion
Kann es sein, dass das die Antwort ist und somit die Besätigung dafür, dass nur überprüft wird, ob Subpattern vohanden ist?
Quelle:
http://www.pcre.org/pcre.txt
So funktioniert es, aber eine Bestätigung hätte ich trotzdem gerne wegen der obigen Frage:
Wenn ich als Bedingung ein Subpattern gebe, wird dann nur überprüft, ob dieses gesetzt ist oder auch der Inhalt?
Folgendes Beispiel:
Code:
Name:\s*(.*?)\s+(.*?)(?(1):\s*(\d+))
Code:
Name: Lieschen Mueller Lieschen Mueller: 43
Im Tutorial:
Regenechsen :: Ideas come true | Optionen, konditionales Regex, Assertion
Kann es sein, dass das die Antwort ist und somit die Besätigung dafür, dass nur überprüft wird, ob Subpattern vohanden ist?
Checking for a used subpattern by number If the text between the parentheses consists of a sequence of digits, the condition is true if a capturing subpattern of that number has pre- viously matched.
http://www.pcre.org/pcre.txt
So funktioniert es, aber eine Bestätigung hätte ich trotzdem gerne wegen der obigen Frage:
Code:
Name:\s*(.*?)$\s*(?(?=\1)\1:\s*(\d+))
Kommentar