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 01/04/2007, 13h29   #1
Membre habitué
 
Inscription : mai 2004
Messages : 208
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 208
Points : 104
Points : 104
Envoyer un message via AIM à Romalafrite Envoyer un message via MSN à Romalafrite
Par défaut La chaine se termine de trois façons..

Bonjour,

Je suis en train de faire une regexp qui est censé récupérer les liens contenus dans les attributs href.

voici à quoi il ressemble pour le moment :

Code :
$regex = '#href=(.*)>#Usi';
le souci c'est que là ça suppose qu'on a un lien du genre <a href=monlien> donc pas d'attribut après href=

alors j'aimerais prendre en compte les différentes possibilités de liens suivants :

<a href=monlien attribut2=chose>
<a href=monlien>
<a href="monlien">
<a href=monlien attribut2="chose">

Comment faire ?

Merci de votre aide.
Romalafrite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/04/2007, 15h34   #2
Membre du Club
 
Avatar de randimby
 
Inscription : décembre 2003
Messages : 64
Détails du profil
Informations forums :
Inscription : décembre 2003
Messages : 64
Points : 57
Points : 57
Envoyer un message via MSN à randimby
J'ai créé ceci il y a un bon bout de temps pour un robot.

Code :
preg_match_all("#<(a|frame|base|area|input) [^>]*(href|src)= *([\"'])?(.*?[^\\\\])(?(3)\\3|[\s>])#i", $parsed_content, $this->result['links']);
Affiné pour tes besoins, cela va être du genre (je ne suis pas sûr à 100% c'est pourquoi je t'ai donné le code original ci-dessus):

Code :
$regex = "#href=([\"'])?(.*?[^\\\\])(?(1)\\1|[\s>])#Usi";
Préviens-moi sur MP (avec lien sur cette page) si tu veux de plus amples explications et je répondrai ici.
randimby est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/04/2007, 09h47   #3
Membre chevronné
 
Avatar de Korko Fain
 
Étudiant
Inscription : août 2005
Messages : 632
Détails du profil
Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2005
Messages : 632
Points : 632
Points : 632
Code :
preg_match_all('#href=["\']([^\1]*)\1#Uis', $code, $matches);
??
Korko Fain est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h54.


 
 
 
 
Partenaires

Hébergement Web