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

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] RegEx

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] RegEx

n°2128429
Yellow-Sky
Posté le 26-02-2012 à 11:51:37  profilanswer
 

Bonjour,
je ne suis pas du tout familier avec les regex.
J'aimerais obtenir tous les liens (xxx) d'une page (lien sous la forme par exemple de <a hreh="xxx" target="_blank">texte</a> )
 
J'ai trouvé des exemple mais cela ne me convient pas. Par exemple ceci:
 

Code :
  1. preg_match_all ('/<a\s+(?:[^"\'>]+|"[^"]*"|\'[^\']*\')*href=("[^"]+"|\'[^\']+\'|[^<>\s]+)/i', $string, $matches);


 
me retourne les liens xxx entre guillemets "" du type "/repertoire/fichier.extension" au lieu de /repertoire/fichier.extension
 
J'aimerais savoir par quoi je dois remplacer pour ne plus les avoir.
 
Merci de votre aide.

mood
Publicité
Posté le 26-02-2012 à 11:51:37  profilanswer
 

n°2128444
Pc_eXPert
Posté le 26-02-2012 à 16:10:22  profilanswer
 

("[^"]+"
Il capture les guillemets effectivement. Voici un truc plus simple qui devrait fonctionner néanmoins :

Code :
  1. preg_match_all ('/<a\s+(?:[^"\'>]+|"[^"]*"|\'[^\']*\')*href=\"(.+)\"/i', $string, $matches);


Si quelqu'un a le courage de développer... En fait .+ va capturer n'importe quel caractère, il ne vérifiera pas que l'URL est bien valide.

n°2128552
Hansolo
Posté le 27-02-2012 à 17:07:28  profilanswer
 

Et tout simplement :
 

Code :
  1. preg_match_all('`<a href="([^"]+)" ?[^>]+>`i', $string, $matches);


?


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

  [PHP] RegEx

 

Sujets relatifs
[PHP-RegEx] Remplacer des expressions par des caractères[PHP] REGEX ou pas dans mon cas ?
PHP Regex date + tel + caracteresProbleme REGEX et PHP
[PHP][REGEX]réduire le texte d'un lien dans une chaine[PHP]Pb: Remplacer 1 variable par 1 mot avec RegEx
[PHP] Regex du tonnerre de Zeus[Php - regex] fonction ereg()
[PHP] Preg_Match() syntaxe regex pcre[PHP] aide sur une regex
Plus de sujets relatifs à : [PHP] RegEx


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