Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/09/2007, 12h41   #1
Invité de passage
 
Inscription : juillet 2006
Messages : 7
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 7
Points : 3
Points : 3
Par défaut soucis de preg_match_all

Bonjour,

j'ai un soucis avec un preg_match_all destiné à recuperer toutes les urls d'une variable.
en fait, tout fonctionne bien sauf pour les urls qui ne sont pas entourées de guillemets simples ou doubles.

preg_match_all("/a[\s]+[^>]*?href[\s]?=[\s\"\']+"."(.*?)[\s\"\']+.*?>"."([^<]+|.*?)?</", $texte, &$matches);

donc <a href=http://www.google.com target=_blank> ne ressort pas
quelqu'un peut m'aider ?
carbon14 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2007, 13h56   #2
Membre chevronné
 
Avatar de cadoudal56
 
Inscription : février 2005
Messages : 671
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : février 2005
Messages : 671
Points : 646
Points : 646
Quand un regex est optionnel, il faut metre un ?
Du moins il me semble...

Essaie ceci :

Code :
1
2
 
preg_match_all("/a[\s]+[^>]*?href[\s]?=[\s\"\']?"."(.*?)[\s\"\']+.*?>"."([^<]+|.*?)?</", $texte, &$matches);
Le + c'est une fois et plus
Le ? c'est 0 ou plusieurs

@+
cadou
__________________
PHP Competition System
Script de gestion de coupes et championnats
http://phpcompet.free.fr

Mon jeu de foot
cadoudal56 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2007, 14h34   #3
Invité de passage
 
Inscription : juillet 2006
Messages : 7
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 7
Points : 3
Points : 3
Citation:
Envoyé par cadoudal56 Voir le message
Quand un regex est optionnel, il faut metre un ?
Du moins il me semble...

Essaie ceci :

Code :
1
2
 
preg_match_all("/a[\s]+[^>]*?href[\s]?=[\s\"\']?"."(.*?)[\s\"\']+.*?>"."([^<]+|.*?)?</", $texte, &$matches);
Le + c'est une fois et plus
Le ? c'est 0 ou plusieurs

@+
cadou
Je me prosterne...
Effectivement, ca fonctionne maintenant ;-)
Merci beaucoup
carbon14 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h59.


 
 
 
 
Partenaires

Hébergement Web