(PHP 4, PHP 5)
preg_split — Éclate une chaîne par expression rationnelle
Éclate une chaîne par expression rationnelle.
Le masque à chercher, sous la forme d'une chaîne de caractères .
La chaîne d'entrée.
Si limit est spécifié, alors seules les limit premières sous-chaînes sont retournées et si limit vaut -1, cela signifie en fait "sans limite", ce qui est utile pour passer le paramètre flags .
flags peut être la combinaison des options suivantes (combinées avec l'opérateur | ):
Si cette option est activée, pour chaque résultat, la position de celui-ci sera retournée. Notez que cela change la valeur retournée en un tableau où chaque élément est un tableau constitué de la chaîne trouvée à la position 0 et la position de la chaîne dans subject à la position 1 .
Retourne un tableau contenant les sous-chaînes de subject , séparées par les chaînes qui vérifient pattern .
Version | Description |
---|---|
4.3.0 | Le drapeau PREG_SPLIT_OFFSET_CAPTURE a été ajouté. |
4.0.5 | Le drapeau PREG_SPLIT_DELIM_CAPTURE a été ajouté. |
4.0.0 | Le paramètre flags a été ajouté. |
Exemple 1899. Exemple avec preg_split() : Éclatement d'une chaîne de recherche
<?php
// scinde la phrase grâce aux virgules et espacements
// ce qui inclus les " ", \r, \t, \n et \f
$keywords
=
preg_split
(
"/[\s,]+/"
,
"langage hypertexte, programmation"
);
?>
Exemple 1900. Scinder une chaîne en caractères
<?php
$str
=
'string'
;
$chars
=
preg_split
(
'//'
,
$str
, -
1
,
PREG_SPLIT_NO_EMPTY
);
print_r
(
$chars
);
?>
Exemple 1901. Scinde une chaîne et capture les positions
<?php
$str
=
'langage hypertexte, programmation'
;
$chars
=
preg_split
(
'/ /'
,
$str
, -
1
,
PREG_SPLIT_OFFSET_CAPTURE
);
print_r
(
$chars
);
?>
L'exemple ci-dessus va afficher :
Array ( [0] => Array ( [0] => hypertext [1] => 0 ) [1] => Array ( [0] => language [1] => 10 ) [2] => Array ( [0] => programming [1] => 19 ) )
Si vous n'avez pas besoin de la puissance des expressions régulières, vous pouvez choisir des alternatives plus rapides (quoique plus simples) comme explode() ou str_split() .
spliti() |
split() |
implode() |
preg_match() |
preg_match_all() |
preg_replace() |