|
|
preg_split (PHP 3>= 3.0.9, PHP 4 , PHP 5) preg_split --
Zerlegt eine Zeichenkette anhand eines regulären Ausdrucks
Beschreibungarray preg_split ( string Suchmuster, string Zeichenkette [, int Limit [, int Flags]])
Gibt ein Array zurück, das aus Teilketten der an den mit
Suchmuster übereinstimmenden Trennsymbolen
zerlegten Zeichenkette besteht.
Falls Limit angegeben wurde, werden maximal
Limit Teilketten zurückgegeben und falls
Limit -1 ist, bedeutet das "kein Limit", was für
die Angabe von Flags sinnvoll ist.
Flags kann jede Kombination der folgenden Flags
sein (verknüpft mit dem bitweisen | Operator):
- PREG_SPLIT_NO_EMPTY
Wenn dieses Flag gesetzt ist, werden von
preg_split() nur die Teile zurückgegeben, die
nicht leer sind.
- PREG_SPLIT_DELIM_CAPTURE
Wenn dieses Flag gesetzt ist, werden auch die eingeklammerten
Ausdrücke des Trennsymbol-Suchmusters erfasst und zurückgegeben.
Dieses Flag wurde in PHP 4.0.5 hinzugefügt.
- PREG_SPLIT_OFFSET_CAPTURE
Wenn dieses Flag gesetzt ist, wird mit jeder gefundenen
Übereinstimmung der dazugehörige Versatz in der Zeichenkette
zurückgegeben. Beachten Sie, dass dies die Rückgabewerte in einem
Array dahingehend ändert, dass jedes Element ein Array ist, das aus
der übereinstimmenden Zeichenkette als Element 0
und deren Stelle in Zeichenkette als Element
1 besteht. Dieses Flag steht seit PHP 4.3.0 zur
Verfügung.
Beispiel 1.
preg_split() Beispiel: Einen Suchstring in seine
Bestandteile zerlegen
<?php // zerlegt die Zeichenkette an Stellen mit beliebiger Anzahl von // Kommata oder Leerzeichen, die " ", \r, \t, \n und \f umfassen $schluesselwoerter = preg_split("/[\s,]+/", "hypertext language, programming"); ?>
|
|
Beispiel 2. Eine Zeichenkette in einzelne Zeichen zerlegen
<?php $str = 'Zeichenkette'; $zeichen = preg_split('//', $str, -1, PREG_SPLIT_NO_EMPTY); print_r($zeichen); ?>
|
|
Beispiel 3.
Eine Zeichenkette in Übereinstimmungen mit dem Suchmuster und deren
Versatz zerlegen
<?php $str = 'hypertext language programming'; $zeichen = preg_split('/ /', $str, -1, PREG_SPLIT_OFFSET_CAPTURE); print_r($zeichen); ?>
|
das liefert:
Array
(
[0] => Array
(
[0] => hypertext
[1] => 0
)
[1] => Array
(
[0] => language
[1] => 10
)
[2] => Array
(
[0] => programming
[1] => 19
)
) |
|
Anmerkung:
Der Parameter Flags wurde in PHP 4 Beta 3
hinzugefügt.
Siehe auch spliti(), split(),
implode(), preg_match(),
preg_match_all() und
preg_replace().
|