Hugo Egon Balder: Regex Zeichenkette in Zeichenklasse

Beitrag lesen

Hi dedlfix,

Wieso bitte ist beim Regex ~[a-zA-Z(%2f)]+~ ein %1 ein Treffer?
(, %, und ) haben in der Zeichenklasse keine Bedeutung und stehen für sich selbst. Damit stehen ebenso die 2 und das f für sich selbst. Letzteres ist überflüssig, weil bereits in a-z enthalten.

das verstehe ich einfach nicht. Die runden Klammern machen mir doch eine "Gruppe"?! Das bedeutet doch in meinem verständnis, dass bei der Gruppe ' %2f ' ein einzelnes Prozentzeichen oder ein einzelnes f keinen Treffer ergeben würde, sondern dass eben nur die Kombination aller 3, so, als ob es sich um ein Zeichen handeln würde, zu einem Treffer führen.

Nicht? Oder anders gefragt: Was bitte ist denn dann sonst der Unterschied zwischen dem Suchmuster ~abcd~ und ~a(bcd)~ ? Und wie würde ich dann nach abc (als Ganzes!) ODER def für einen Treffer suchen? Nach meinem bisherigen Verständnis mit ~(abc)|(def)~ , aber das ist offenbar falsch. =(

Mit freundlichen Grüßen

Hugo Egon Balder