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 :

Trouver les images qui n'ont pas de lien [RegEx]


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 7
    Points : 4
    Points
    4
    Par défaut Trouver les images qui n'ont pas de lien
    Bonjour à tous

    Voilà plusieurs heures que je cherche à monter une regex pour pouvoir traiter du HTML mais sans succès

    Mon but serait de remplacer toutes les balises <img /> qui ne sont pas précédées de la balise <a>
    J'arrive à filtrer les balises IMG qui possèdent un lien, mais pas le contraire...

    J'ai déjà tenté une assertion arrière négative mais dans le cas ou les balises <a> possèdent des attributs différents l'assertion ne peut pas être extensible... c'est un vrai casse tête

    D'avance, Merci pour votre aide

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Répété un nombre incalculable de fois sur ce forum : les expressions régulières ne sont pas la bonne solution pour parser du HTML / XML.
    Il existe des fonctions spécifiques pour ça : Manipulation XML - Manual.
    La répétition crée la notion.

  3. #3
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Merci, je vais me pencher la dessus

    Mais en terme de regex, ce cas de figure m’intéresse tout de même

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 389
    Points : 10 422
    Points
    10 422
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <?php
    $page_cible = 'http://www.developpez.net/forums/d1312526/php/langage/regex/recuperer-images-html/';
    $tab = array();
    $dom = new DOMDocument;
    if(@$dom->loadHTMLFile($page_cible)){
    	$domliste = $dom->getElementsByTagName('img');
    	foreach($domliste as $img) {
    		if( !(isset($img->parentNode) && $img->parentNode->tagName == 'a')){
    			$tab[] = $img->getAttribute('src');// ici j'enregistre la source de l'image dans un tableau
    		}
    	}
    }
    else{
    	echo 'le document '.$page_cible. ' n\'a pas pu être chargé';
    }
    echo '<pre>';
    print_r($tab);
    echo '</pre>';
    ?>

  5. #5
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2013
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Merci beaucoup !

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 27/05/2014, 19h10
  2. Réponses: 2
    Dernier message: 12/06/2008, 11h53
  3. sauvgarder les objets qui n'ont pas été sauvgarder
    Par ferrero dans le forum Hibernate
    Réponses: 5
    Dernier message: 23/05/2007, 16h22
  4. Réponses: 6
    Dernier message: 11/07/2006, 10h04
  5. [XSL] Sélectionner les éléments qui n'ont pas un certain fils
    Par lebechen dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 05/07/2006, 17h54

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