regular_expressions
Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Regular Expressions
Eine Regular Expression (abgekürzt RegExp, oder RegEx) ist eine Zeichenkette, die eine Mengen von Zeichenketten mit Hilfe von syntaktischen Regeln beschreibt.
Zeichenauswahl
RegExp | Bedeutung |
---|---|
[abc] | eines der Zeichen a , b oder c |
[0-2] | eine Ziffer von 0 bis 2 |
[^a] | ein beliebiges Zeichen außer a |
POSIX-Zeichenklassen
RegExp | Bedeutung |
---|---|
[:cntrl:] | Steuerzeichen |
[:print:] | Druckbare Zeichen: [:alnum:] , [:punct:] und Leerzeichen |
[:space:] | Whitespace: Horizontaler und vertikaler Tabulator, Zeilen- und Seitenvorschub, Wagenrücklauf und Leerzeichen |
[:blank:] | Leerzeichen oder Tabulator |
[:graph:] | Graphische Zeichen: [:alnum:] oder [:punct:] |
[:punct:] | Satzzeichen wie: ! „ # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~ |
[:alnum:] | Alphanumerische Zeichen: [:alpha:] oder [:digit:] |
[:xdigit:] | Hexadezimale Ziffern: 0 bis 9 , A bis F , a bis f |
[:digit:] | Die Ziffern 0 bis 9 |
[:alpha:] | Buchstaben: [:lower:] oder [:upper:] |
[:lower:] | Kleinbuchstaben |
[:upper:] | Großbuchstaben |
Die POSIX-Zeichenklassen müssen innerhalb einer Zeichenauswahl []
stehen.
Beispiel: [[:alnum:]]
Quantoren
RegExp | Bedeutung |
---|---|
? | null- oder einmal |
+ | mindestens einmal (entspricht {1,} ) |
* | beliebig oft (auch keinmal) (entspricht {0,} ) |
{n} | exakt n-mal (entspricht {n,n} ) |
{min,} | mindestens min-mal |
{min,max} | mindestens min-mal, max-mal |
{0,max} | maximal max-mal |
Spezielle Zeichen
RegExp | Bedeutung |
---|---|
. | beliebiges Zeichen |
\ | Escapezeichen |
^ | Zeilenanfang |
$ | Zeilen- oder Stringende |
Die unterstützen Features unterscheiden sich je nach Implementierung/Sprache.
PHP (PCRE)
- regular expressions 101 (PHP) Tester, erzeugt textuelle Erklärung der Regexp
Python
Python unterstützt die POSIX-Zeichenklassen wie [:alpha:]
oder [:alnum:]
nicht.
Dafür kennt Python special sequences:
special sequence | Bedeutung |
---|---|
\d | beliebige Ziffer [0-9] |
\D | beliebiges Zeichen, das keine Ziffer ist |
\w | beliebiges Zeichen aus [a-zA-Z0-9_] |
\W | beliebiges Zeichen, das nicht in [a-zA-Z0-9_] enthalten ist |
\s | beliebiges Leerzeichen |
\S | beliebiges Nicht-Leerzeichen |
- Pythex Onlinetester mit Cheatsheet
- regular expressions 101 (Python) Tester, erzeugt textuelle Erklärung der Regexp
sed
In sed müssen alle Quantoren außer *
escaped werden:
Quantor | Bedeutung |
---|---|
* | beliebig oft (auch keinmal) |
\+ | mindestens einmal, aber auch mehrfach |
\? | null oder einmal |
\{n\} | n-mal |
\{i,n\} | i bis n-mal |
Links
- Regexlib Bibliothek mit Regex
regular_expressions.1472842120.txt.gz · Zuletzt geändert: 2016/09/02 20:48 von olli