IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Extraire une URL en excluant certaines extensions [RegEx]


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 29
    Points : 29
    Points
    29
    Par défaut Extraire une URL en excluant certaines extensions


    Bon voila j'ai une REGEX bien sympa qui me permet d'extraire les liens d'une page

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	"/(?:(?:src|href|url)\s*[=\(]\s*[\"'`])".
       			"([\+\w:?=@&\/#._;-]+)(?:[\s\"'`])/i"
    neanmoins je me suis aperçu qu'un certain nombre d'extensions ne me servaient à rien et pour allèger le script il conviendrait de les eliminer.

    Donc j'essaye de rassembler mes esprit et je modifie la REGEX comme il suit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    "/(?:(?:src|href|url)\s*[=\(]\s*[\"'`])".
       			"((?!(gif|jpg|doc|xls|pdf))[\+\w:?=@&\/#._;-]+)(?:[\s\"'`])/i"
    Malheuresement cela continue de me sortir tout les liens sans entraver les extensions mentionnées.

    Une aide serait la bienvenue car je seche un peu....

  2. #2
    Membre habitué Avatar de daniel61
    Inscrit en
    Décembre 2006
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 139
    Points : 169
    Points
    169
    Par défaut
    Citation Envoyé par marciv
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    "/(?:(?:src|href|url)\s*[=\(]\s*[\"'`])".
       			"((?!(gif|jpg|doc|xls|pdf))[\+\w:?=@&\/#._;-]+)(?:[\s\"'`])/i"
    dans une prochaine vie, tu m'expliqueras l'intérêt de src et url si tu ne veux pas d'images

    pour l'expression, 2 fois rien, parenthèses au mauvais endroit à mon avis.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    "/(?:(?:src|href|url)\s*[=\(]\s*[\"'`])".
       			"((?:(?!\.gif|\.jpg|\.doc|\.xls|\.pdf)[\+\w:?=@&\/#._;-])+)(?:[\s\"'`])/isU"
    j'ai ajouter \. pour ne pas détruire "gif.html" par exemple, et les options "s et U" sont à considérer sur du html.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 29
    Points : 29
    Points
    29
    Par défaut Danny the dog
    Merci danny....

    pour les url et scr c pour garder la trace dans la REGEX au cas ou je modifierai le script ultérieurement......pas très logique je sais

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Extraire une URL et en remplacer qu'une partie
    Par guillaumeIOB dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/10/2012, 19h43
  2. [RegEx] extraire une url dans une chaine
    Par misakilou dans le forum Langage
    Réponses: 6
    Dernier message: 15/02/2012, 19h08
  3. Extraire une URL d'un site en Javascript
    Par Toximix dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 09/01/2011, 16h05
  4. [RegEx] Extraire une url d'une chaine
    Par About dans le forum Langage
    Réponses: 1
    Dernier message: 16/04/2008, 21h23
  5. [RegEx] [Script]Extraire une url
    Par Hell dans le forum Langage
    Réponses: 9
    Dernier message: 17/10/2004, 15h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo