Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

16.08.2014se_10_regulaere_ausdruecke.ppt1 Softwareengineering Reguläre Ausdrücke (regular expressions) Prof. Dr.-Ing. Axel Benz, Berlin School of Economics.

Ähnliche Präsentationen


Präsentation zum Thema: "16.08.2014se_10_regulaere_ausdruecke.ppt1 Softwareengineering Reguläre Ausdrücke (regular expressions) Prof. Dr.-Ing. Axel Benz, Berlin School of Economics."—  Präsentation transkript:

1 16.08.2014se_10_regulaere_ausdruecke.ppt1 Softwareengineering Reguläre Ausdrücke (regular expressions) Prof. Dr.-Ing. Axel Benz, Berlin School of Economics and Law

2 16.08.2014se_10_regulaere_ausdruecke.ppt2 Werden gebraucht zu... -Mustererkennung in Zeichenketten -Ersetzen komplexer Muster (Pattern)

3 16.08.2014se_10_regulaere_ausdruecke.ppt3 Pattern Syntax  Erstes und letztes Zeichen des Patterns sind frei wählbar und bezeichnen Anfang und Ende des Patterns (in PHP, in Java bleiben diese Zeichen weg)  Normalerweise nimmt dafür "@" oder "\", je nachdem, ob diese Zeichen nicht im Pattern selbst auftauchen.  Innerhalb des Patterns bezeichnen die Zeichen sich selbst (Ausnahmen siehe später), also  @a@  findet z.B. eine Zeichenkette, die "a" enthält  @axel@  findet eine Zeichenkette, die "axel" enhält.  Der Punkt "." bezeichnet ein beliebiges Zeichen  @abba.abba@ findet abbaUabba, abbaOabba usw.  Der Stern "*" bedeutet, dass das zuvor stehende Zeichen 0 Mal oder beliebig auf auftauchen kann  Das Fragezeichen "?" bedeutet, dass das zuvor stehende Zeichen 0 oder ein Mal auftauchen kann  @abba.*abba@ findet jede Zeichenkette, die zweimal "abba" enthält

4 16.08.2014se_10_regulaere_ausdruecke.ppt4 Quotieren  Wird ein Zeichen gesucht, das eine Sonderbedeutung hat (Metazeichen), wie z.B. "." oder "*", dann wird das Zeichen im Patter über Backslash "\" quotiert.  @\.@ findet einen Punkt  @\*@ findet eine Stern  @\\@ findet einen Backslash

5 16.08.2014se_10_regulaere_ausdruecke.ppt5 Reguläre Ausdrücke in PHP

6 16.08.2014se_10_regulaere_ausdruecke.ppt6 Reguläre Ausdrücke in Java

7 16.08.2014se_10_regulaere_ausdruecke.ppt7 Weitere Metazeichen  ^ bedeutet den Anfang des durchsuchten Strings  $ bedeutet das Ende des durchsuchten Strings  @^axel$@ findet NUR "axel" nicht "axela" oder "yaxel"  PHP: (var_dump dient nur Ausgabe, ähnlich wie "echo"):  Java:

8 16.08.2014se_10_regulaere_ausdruecke.ppt8 Weitere Metazeichen  Zeichenmengen werden mit [ ] angegeben,  [AB] findet A oder B  [A-Z] findet alle Buchstaben von A bis Z (aber nur große!)  [A-Za-z] findet Groß- und Kleinbuchstaben von A bis Z  [0-9] findet Ziffern  [^0-9] findet alle Zeichen AUSSER Ziffern!  Beispiel: Erkennen von HTML Color codes:  @#[0-9a-fA-F][0-9a-fA-F]?[0-9a-fA-F]?[0-9a-fA-F]?[0-9a-fA-F]?[0-9a-fA-F]?@  \s findet Whitespaces (Carriage Return, Newline, " ", Tabulator....)  \n findet Newline, \r Carriage Return (Achtung: In Windows ist der Zeilenumbruch \r\n, in Unix \n)  \t findet Tabulator

9 16.08.2014se_10_regulaere_ausdruecke.ppt9 Rückgabe des gefundenen Patterns  In PHP wird das gefundene Pattern an den Index 0 eines Arrays geschrieben, das dem Aufruf mitgegeben wird:  $ergebnis[0] enthält "hallo".  In Java gibt die Methode "group" des Matchers das das letzte gefunden Pattern zurück.

10 16.08.2014se_10_regulaere_ausdruecke.ppt10 Subpattern

11 16.08.2014se_10_regulaere_ausdruecke.ppt11 Replacements


Herunterladen ppt "16.08.2014se_10_regulaere_ausdruecke.ppt1 Softwareengineering Reguläre Ausdrücke (regular expressions) Prof. Dr.-Ing. Axel Benz, Berlin School of Economics."

Ähnliche Präsentationen


Google-Anzeigen