Regex et séparateur de champs

Regex et séparateur de champs - PHP - Programmation

Marsh Posté le 19-09-2008 à 11:54:58    

Bonjour je cherche à faire une expression du type :
 
/{([\W])?(plugin):([^}\|]+)\|?([^}\|@]+)?@?([^}\|]+)?}/i
 
Qui par ex récupère les prams dans :
plugin: patati|toto,tata@patata
 
Je récupère les champs qui m'intéressent ensuite dans les match, on a donc un premier séparateur qui est un ":" ensuite un "|" et pour finir un "@".
Sauf que je veux mettre un séparateur de champs plus sûr(qui ne puisse pas être dans les paramètres récupérés) qui serait sur plusieurs caractères genre "@_@" et là ça ne passe pas, j'arrive pas à le mettre en place.  

Reply

Marsh Posté le 19-09-2008 à 11:54:58   

Reply

Marsh Posté le 22-09-2008 à 12:01:15    

Et ta chaine c'est toi qui la génère?
Car moi je sépare mes paramètres avec ||
$param = 'test||blabla||vfbg';
et je $param = explode('||', $param);
 
sinon sa peut-etre:
 

Code :
  1. preg_match("`([^\:]*)\:([^|]*)|([^,]*),([^@]*)@(.*)`i", $chaine, $match);


Message édité par ouiouioui10 le 22-09-2008 à 12:06:21
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed