Théo B. Posté 18 Août 2007 Posté 18 Août 2007 (modifié) Bonjour, J'utilise des chaines de ce genre : 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! $chaine = preg_replace("/\s/", "", 'abaca | AAABC *N11'); // on supprime les espacespreg_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]+)/ Modifié 18 Août 2007 par Théo B.
Théo B. Posté 18 Août 2007 Auteur Posté 18 Août 2007 Et ça marche avec les accents ?? Comme dit sur le chat, oui
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant