OVH Cloud OVH Cloud

split

3 réponses
Avatar
Joseph KHOURY
Bonjour,
Je souhaite utiliser la méthode split pour décomposer une chaine de
caractères en tableau suivant plusieurs séparateur.
les séparateurs sont :
-
espace blanc
retour sur la ligne
retour chariot

pouvez vous me dire comment écrire la syntaxe ?
j'ai essayé la syntaxe suivante mais ca ne marche pas
$tab= split ('[-." ".\\n.\\r.\\s]', $texte_e);

Merci de votre aide.

3 réponses

Avatar
Steuf
Bonjour,


Bonjour,

Je souhaite utiliser la méthode split pour décomposer une chaine de
caractères en tableau suivant plusieurs séparateur.
les séparateurs sont :
-
espace blanc
retour sur la ligne
retour chariot


Attention split est fonction assez lente, question optimisation il est
plus intéressant d'utiliser preg_split.

http://fr.php.net/manual/fr/function.preg-split.php


pouvez vous me dire comment écrire la syntaxe ?
j'ai essayé la syntaxe suivante mais ca ne marche pas
$tab= split ('[-." ".n.r.s]', $texte_e);


Il faudrait plutôt utiliser un ou entre chaque caractére c'est à dire |,
plutôt que le point qui veut dire "n'importe quel caractéres". Donc je
verais plus un truc du genre :

[-|n|r|s]

Mais bon comme les expressions regulieres ce n'ets pas trop mon fort ^^.
D'ailleurs un bon site la dessus :

http://www.expreg.com/


Merci de votre aide.


De rien

--
Site dédié au développement WEB : http://www.exinsidephp.com

Avatar
Clement
Il faudrait plutôt utiliser un ou entre chaque caractére c'est à dire |,
plutôt que le point qui veut dire "n'importe quel caractéres". Donc je
verais plus un truc du genre :

[-|n|r|s]


Il me semble que c'est [-nrs] (peut-etre un "" devant "-" mais je ne
pense pas)

http://www.expreg.com/


Je le conseille aussi ;o)

Avatar
P'tit Marcel
Je souhaite utiliser la méthode split pour décomposer une chaine de
caractères en tableau suivant plusieurs séparateur.


Attention split est fonction assez lente, question optimisation il est
plus intéressant d'utiliser preg_split.

Il faudrait plutôt utiliser un ou entre chaque caractére c'est à dire |,
plutôt que le point qui veut dire "n'importe quel caractéres". Donc je
verais plus un truc du genre :
[-|n|r|s]



plus précisément :

$tableau = preg_split("`(-|n|r| )`", $chaine);

le code s sauf erreur est un groupe qui comprend l'espace, r, n, f,
t et autre. Si cela correspond à ton besoin, alors le masque "`(-|s)`"
devrait suffire.


eça
--
P'tit Marcel
stats sur les forums modérés http://www.centrale-lyon.org/ng/