You are here

Perl - Regular Expressions

# Mustererkennung und Substitution
    # mit der Mustererkennung kann man eine Variable
    # auf einen bestimmten Inhalt durchsuchen
    $zuUntersuchen =~ m/<Suchmuster>/<Option>;
 
    # Substitution ist ähnlich der Mustererkennung,
    # außer dass das gefundene Muster ersetzt werden kann
    $zuErsetzen =~ s/<Suchmuster>/<Ersetzung>/<Option>;
 
    # Optionen
        # g         globale Suche, findet/ersetzt alle vorkommenden Muster
        # i         ignoriere Groß-/Klein-Schreibung
        # o         Suchmuster nur beim ersten Durchlauf kompiliert
        # m         behandelt den zu durchsuchenden String
        #           als würde er aus mehreren Zeilen bestehen
        # s         behandelt den zu durchsuchenden Strin
        #           als würde er aus einer Zeile bestehen
        # x         erlaubt Verwendung erweiterter regulärer Ausdrücke
 
 
    # Suchmuster
        # grundsätzlich kann das Suchmuster aus einem normalen String bestehen
        # (z.B. "Hallo\tWelt")
        # folgende Sonderzeichen haben in den regulären Ausdrücken eine
        # spezielle Bedeutung: . + * ? ^ $ ( ) [ ] { } | \
        # um solch ein Zeichen trotzdem zu suchen wird \x verwendet
 
        # \d        sucht nach einer Ziffer [0…9]
        # \D        sucht nach keiner Ziffer
        # \w        sucht ein Wortzeichen [0…9a…zA…Z_]
        # \W        sucht kein Wortzeichen
        # \a        sucht nach einem Alarm-Zeichen
        # \e        sucht nach einem Escape-Zeichen
        # \f        sucht nach einem Seitenvorschub (Form feed)
        # \n        sucht nach einem Zeilenvorschub (Newline)
        # \r        sucht nach einem Wagenrücklauf (Carriage Return)
        # \s        sucht nach einem Leerzeichen (white Space) und \t \n \r \f
        # \S        sucht nach einem Nicht-WhiteSpace
        # \t        sucht nach einem Tabulator
        # \b        prüft auf eine Wortgrenze
        #           z.B. \bl\wben\b richtig: leben falsch: erleben
        #                                    laben         verloben
        #                                    loben
        # \B        prüft auf eine Nicht-Wortgrenze
        # \A        prüft auf den Anfang eines Strings
        # \Z        prüft auf das Ende eines Strings
        # .         beliebiges Zeichen (außer \n)
        # [...]     ein Zeichen aus einer Menge
        # [^...]    ein Zeichen nicht aus einer Menge
        # |         trennt alternative Muster
        # ( )       Gruppierung von Zeichen
 
 
    # Quantifier (Wiederholungsfaktoren)
        # *         Angabe muss mindestens 0 mal vorkommen
        # +         Angabe muss mindestens 1 mal vorkommen
        # ?         Angabe muss höchstens 1 mal vorkommen
        # {n}       Angabe muss genau n-mal vorkommen
        # {n,}      Angabe muss mindestens n-mal vorkommen
        # {n,m}     Angabe muss mindestens n-mal und höchstens m-mal vorkommen