Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1274 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Prise de tête avec les expressions régulières

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Prise de tête avec les expressions régulières

n°622640
spark
Luc ?
Posté le 27-01-2004 à 11:48:10  profilanswer
 

Oui, on va encore se moquer de moi, mais ca fait 1/2 heure que je me prends la tête avec une pauvre expression régulière toute conne et j'y arrive pas
 
J'ai une chaine xxxx%aa%xxxxxx%bb%xxxxxxxxxxx%cc%xxxxxx
et je voudrais récupérer les %aa%, %bb% et %cc% dans un tableau
 
donc j'ai fais un vieux  
 
preg_match("/(%*%)/", $value, $pp);
 
mais forcément, ca marche pas :D
Faut que je mette quoi à la place de "/(%*%)/" ??

mood
Publicité
Posté le 27-01-2004 à 11:48:10  profilanswer
 

n°622709
saxgard
Posté le 27-01-2004 à 12:33:36  profilanswer
 

spark a écrit :

Oui, on va encore se moquer de moi, mais ca fait 1/2 heure que je me prends la tête avec une pauvre expression régulière toute conne et j'y arrive pas
 
J'ai une chaine xxxx%aa%xxxxxx%bb%xxxxxxxxxxx%cc%xxxxxx
et je voudrais récupérer les %aa%, %bb% et %cc% dans un tableau
 
donc j'ai fais un vieux  
 
preg_match("/(%*%)/", $value, $pp);
 
mais forcément, ca marche pas :D
Faut que je mette quoi à la place de "/(%*%)/" ??


 
sinon pourquoi tu utilise pas des fonctions de chianes de caractères qui te coupe la cahine jusuq'a un delimiteur  , tu le defini etant %  
je sais pas si c pas des trucs strtok etc.. enfin des machins dans ce genre

n°622832
spark
Luc ?
Posté le 27-01-2004 à 14:11:07  profilanswer
 

la solution pour ceux que ca intéresse :
 
preg_match_all("/%[^%]*%/", $value, $pp);

n°622834
spark
Luc ?
Posté le 27-01-2004 à 14:12:40  profilanswer
 

avec un '+' au lieu de '*' c'est même mieux :D

n°623072
Tentacle
Posté le 27-01-2004 à 20:55:50  profilanswer
 

Tu peux aussi ne pas utiliser les expressions régulières :
 
Tu découpes ta chaîne grâce à explode (% est le séparateur) et ensuite tu lis un élément sur 2 du tableau retourné en commençant par le 2ème élément.
Par exemple :
xxx%abd%yyy%fgh%t
explode retourne le tableau
'xxx', 'abd', 'yyy', 'fgh', 't'
tu lis un élément sur 2 ce qui donne :
'abd', 'fgh'
Hop =)
 
Edit: tout ça pour dire que ce sera peut-être plus rapide qu'une expression régulière (je pense)


Message édité par Tentacle le 27-01-2004 à 20:56:25

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Prise de tête avec les expressions régulières

 

Sujets relatifs
Quel forum en PHP gratuit ?[PHP] Faire un 'u' sur tous les champs d'une table
[PHP] Page interprétée entièrement, pas d'output vers le browser[PHP] Connexion à MySQL
Proteger son code PHP[PHP] Convertir une ip en un INT...
[PHP] Marrant ca : session_start() => Failed to init. storage moduleSite Intranet en PHP
gerer 2 bases mysql en PHP?[PHP] PB avec safe_mode et shell_exec
Plus de sujets relatifs à : [PHP] Prise de tête avec les expressions régulières


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR