Aller au contenu

Regex difficile à dompter


Théo B.

Sujets conseillés

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 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]+)/

Modifié par Théo B.
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...