Функция preg_split
Die Funktion preg_split teilt einen String in Array-Elemente auf, wobei ein regulärer Ausdruck zur Suche nach Trennzeichen verwendet wird. Der erste Parameter akzeptiert den regulären Ausdruck, der zweite den ursprünglichen String. Der dritte optionale Parameter legt die Anzahl der Array-Elemente im Endergebnis fest. Der vierte optionale Parameter setzt
Flags, die das Verhalten der Funktion ändern.
Syntax
preg_split(pattern, subject, [limit], [flags]);
Flags
| Flag | Konstante | Beschreibung |
|---|---|---|
PREG_SPLIT_NO_EMPTY |
1 | Gibt nur nicht-leere Teile nach der Teilung zurück. |
PREG_SPLIT_DELIM_CAPTURE |
2 | Erfasst und gibt Teile der Übereinstimmung mit Untermustern im regulären Ausdruck zurück. |
PREG_SPLIT_OFFSET_CAPTURE |
4 | Fügt für jeden zurückgegebenen Teil dessen Position im ursprünglichen String hinzu. |
Beispiel
Teilen wir einen String anhand von Kommas:
<?php
$res = preg_split('/,/', 'a,b,c,d,e');
var_dump($res);
?>
Ergebnis der Codeausführung:
['a', 'b', 'c', 'd', 'e']
Beispiel
Teilen wir einen String anhand beliebiger Leerzeichen mit einer Begrenzung der Elementanzahl:
<?php
$res = preg_split('/\s+/', '1 2 3 4 5', 3);
var_dump($res);
?>
Ergebnis der Codeausführung:
['1', '2', '3 4 5']
Beispiel
Verwendung des Flags PREG_SPLIT_NO_EMPTY zum Ausschließen leerer Elemente:
<?php
$res = preg_split('/[,\s]/', 'a,b, c, ,d', -1, PREG_SPLIT_NO_EMPTY);
var_dump($res);
?>
Ergebnis der Codeausführung:
['a', 'b', 'c', 'd']
Siehe auch
-
die Funktion
preg_match,
die eine Suche mit einem regulären Ausdruck durchführt -
die Funktion
explode,
die einen String anhand eines einfachen Trennzeichens aufteilt