Bedingte Unterausdrücke bieten die Möglichkeit, bestimmte Unterausdrücke nur unter gewissen Bedingungen anzuwenden. Die so definierten Pattern kommen nur dann zum Einsatz, wenn z.B. ein vorheriges Pattern zutraf.
Dabei werden zwei verschiedene Version von Bedingten Unterausdrücken unterschieden:
- solche, die, wenn eine Bedingung zutrifft, ein Suchmuster auswerten und
- solche, die, wenn eine Bedingung zutrifft, ein Suchmuster auswerten, und, sollte die Bedingung nicht zutreffen, ein anderes Suchmuster auswerten.
Man kann damit also quasi eine If-Anweisung mit optionalem Else-Zweig direkt im Suchmuster unterbringen.
Bedingung ohne Alternative
Die Syntax lautet (?(bedingung)pattern-wenn), wobei dieses Pattern nur
zum Einsatz kommt, wenn die Bedingung zutrifft.
Bedingung mit Alternative
oder (?(bedingung)pattern-wenn|pattern-wenn-nicht)
wo je nach Bedingung entweder das eine oder das andere Pattern verwendet wird.
Verwandte Themen
- Assertions
- Backreferences
- Conditional group contains more than two branches
- Fehlermeldungen
- Reference to non-existent subpattern
- Unterausdrücke
Kapitelnavigation
- Letzte Änderung: 24.07.2010, 03:39:02
- © 2003 - 2010 nophia web