Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
ibex:kursinhalte:kursteil2:regex [2025/04/13 23:18] 18.118.159.157 alte Version wiederhergestellt (2025/03/20 01:08) |
ibex:kursinhalte:kursteil2:regex [2025/04/18 10:30] (aktuell) 3.16.48.120 alte Version wiederhergestellt (2025/04/13 23:31) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== reguläre Ausdrücke ====== | ====== reguläre Ausdrücke ====== | ||
- | |||
- | https:// | ||
- | |||
- | {{ : | ||
- | |||
- | |||
- | ---- | ||
- | |||
- | |||
- | |||
- | ==== Beispielcode ==== | ||
- | |||
< | < | ||
- | <?php | ||
- | // reguläre Ausdrücke (regular expressions = regex) | ||
- | // preg_match() | ||
- | // in einer Zeichenkette gefunden wird oder nicht | ||
- | $str = " | + | Hi Martina kannst Du dein geschriebenen Kommentar |
- | $pattern = "/ | + | |
- | /** | + | |
- | * /(Anfang regex) | + | |
- | * ^ überprüft Anfang des Textes, hier: das 1. Zeichen darf keine Zahl haben | + | |
- | * [] überprüft, | + | |
- | * allerdings gilt das nur für das erste Zeichen und wenn man die | + | |
- | * Klammer noch mal einfügt, für das zweite und so weiter | + | |
- | * ^innerhalb der eckigen Klammern verneinend, in den | + | |
- | * eckigen Klammern wird nun überprüft, | + | |
- | * enthalten sind | + | |
- | * 0-9 ... in diesem Fall soll überprüft werden, ob keine | + | |
- | * Ziffern in der Zeichenkette sind | + | |
- | * * hier: alle 0-n Zeichen zwischen erstem und letztem Zeichen | + | |
- | * dürfen keine Zahl sein | + | |
- | * $ überprüft das Ende einer Zeichenkette, | + | |
- | * / Ende des regex | + | |
- | | + | |
- | * statt [^\d] kann man auch [\D] nehmen, um Zahlen zu verneinen, | + | |
- | | + | |
- | * macht, dafür aber später den Code verstehen | + | |
- | * (mehr davon Link: https:// | + | |
- | */ | + | |
- | // preg_match(muster, | + | |
- | if( preg_match($pattern, | + | </ |
- | echo(" | + | |
- | } | + | |
- | else { | + | |
- | echo(" | + | |
- | } | + | |
- | $var = " | + | https://www.w3schools.com/php/php_regex.asp |
- | echo ('< | + | |
- | // bei '' | + | |
- | // deswegen bei echo "" | + | |
- | + | {{ : | |
- | // Schreibe einen Regex, der eine beliebige Zeichenkette erkennt, | + | |
- | // die mit einem Großbuchstaben beginnt. [A-Z] | + | |
- | $str2 = " | + | |
- | $pattern2 = "/ | + | |
- | + | ||
- | if( preg_match($pattern2, | + | |
- | echo(" | + | |
- | } | + | |
- | else { | + | |
- | echo(" | + | |
- | } | + | |
- | + | ||
- | /** | + | |
- | * wenn ich auf ein Symbol prüfen will, das schon als Befehl vergeben ist, | + | |
- | * benutze ich Backslash, um das als | + | |
- | */ | + | |
- | echo ("< | + | |
- | | + | |
- | | + | |
- | + | ||
- | if( preg_match($patternUml, | + | |
- | | + | |
- | } | + | |
- | else { | + | |
- | | + | |
- | } | + | |
- | + | ||
- | + | ||
- | echo ("< | + | |
- | /** | + | |
- | * prüfen, ob mehrere von einem vorkommt, z. B. www in URL | + | |
- | */ | + | |
- | | + | |
- | | + | |
- | + | ||
- | if( preg_match($patternURL, | + | |
- | | + | |
- | } | + | |
- | else { | + | |
- | | + | |
- | } | + | |
- | + | ||
- | // wenn man "/ | + | |
- | // | + | |
- | + | ||
- | echo ("< | + | |
- | /** | + | |
- | * prüfen einer E-Mail | + | |
- | */ | + | |
- | $mail = " | + | |
- | | + | |
- | + | ||
- | if( preg_match($patternURL, | + | |
- | | + | |
- | } | + | |
- | else { | + | |
- | | + | |
- | } | + | |
- | ?> | + | |
- | + | ||
- | </ | + |