Version complète: sur le forum Webmaster Hub : Regex difficile à dompter
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
Théo B.
Bonjour,

J'utilise des chaines de ce genre :

CITATION
embarqué | ABEEMQRU *J11


Je voudrais réussir à trier cette chaîne pour mettre chaque morceau dans un tableau, à savoir :
"embarqué", "ABEEMQRU" et "J11".
La première partie (ici embarqué) peut comporter des caractères alphabétiques (a-zA-Zéèà..., \w quoi) et des tirets.
La deuxième partie (ABEEMQRU) des lettres majuscules (A-Z) et la troisième des chiffres et des lettres ([A-Z0-9]).

Toutefois, la regex suivante ne marche pas!

CODE
$chaine = preg_replace("/\s/", "", 'abaca    |    AAABC    *N11'); // on supprime les espaces
preg_match_all('/([^\w\-]+)\|([\w]+)*([A-Z0-9]+)/',$chaine,$match); //on tente d'extraire les trois parties


Où est le problème ?

Merci.

//EDIT : Tout est bien qui finit bien, j'avais un ^ devant le \w\- et j'avais oublié le \ devant *.
Fatigue, fatigue!
REGEX finale : /([\w\-]+)\|([\w]+)\*([A-Z0-9]+)/
petit-ourson
Et ça marche avec les accents ??
Théo B.
CITATION(petit-ourson @ samedi 18 août 2007 à 15:56) *
Et ça marche avec les accents ??


Comme dit sur le chat, oui wink.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.