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

JavaScript Discussion :

regexp et lien internet


Sujet :

JavaScript

  1. #1
    Membre habitué
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2002
    Messages
    329
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2002
    Messages : 329
    Points : 139
    Points
    139
    Par défaut regexp et lien internet
    Bonjour,

    J'utilise le masque suivant pour déterminer si le texte donné est un lien internet vars un fichier image (png, jpg, bmp ou png)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [http://]{0,1}([a-zA-Z0-9.-]+\.jpg|png|gif|bmp)
    Je cherche à valider tous les liens du type :
    http://www.monsite.fr/photo.png
    ou
    www.monsite.fr/photo.png

    et récupérer le lien sans http://

    En faisant fonctionner ce masque via la fonction match,

    il me retourne uniquement le mot png !

    Pourquoi?

    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    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
    <script type="text/javascript">
     
    var url1="http://www.monsite.fr/photo.png"
    var url2="www.monsite.fr/photo.png"
     
    reg=/^(http:\/\/)?[^\/]*\/?([a-z]+\.((jpg)|(png)|(gif)|(bmp)))$/
     
    matches1=url1.match(reg)
    alert(matches1[2])
     
    ''.match(reg)
     
    matches2=url2.match(reg)
    alert(matches2[2])
    </script>
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre habitué
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2002
    Messages
    329
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2002
    Messages : 329
    Points : 139
    Points
    139
    Par défaut
    Bonsoir,

    Merci

    Mais si j'ai une adresse du style
    http://www.monsite.fr/rep1/rep2/photo.png

    J'ai bien tenté avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    reg=/^(http:\/\/)?([^\/]*\/?)*([([a-z]+\.((jpg)|(png)|(gif)|(bmp)))$/
    mais le tableau match reste vide ???

    [EDIT]
    sinon j'ai ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    reg=/^(http:\/\/)?(([^\/]*\/?)*)([([a-z]+\.((jpg)|(png)|(gif)|(bmp)))$/
    et cela me retourne
    pour http://www.monsite.fr/mail/rem/photo.png

    www.monsite.fr/mail/rem1/phot

    sans le dernier "o"

    Pourquoi?

    [EDIT]
    le masque suivant semble fonctionner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    reg=/^(http:\/\/)?(([^\/]*\/?)*)([a-z]+\.((jpg)|(png)|(gif)|(bmp)))$/

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    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
    <script type="text/javascript">
     
    var url1="photo.png"
    var url2="http://www.monsite.fr/rep1/rep2/photo.png"
     
    reg=/^(http:\/\/)?([^\/]*\/)*([a-z]+\.((jpg)|(png)|(gif)|(bmp)))$/
     
    matches1=url1.match(reg)
    alert(matches1[3])
     
    ''.match(reg)
     
    matches2=url2.match(reg)
    alert(matches2[3])
    </script>
    Sinon plus simple:
    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
    <script type="text/javascript">
     
    var url1="photo.png"
    var url2="http://www.monsite.fr/rep1/rep2/photo.png"
     
    reg=/[a-z]+\.((jpg)|(png)|(gif)|(bmp))$/
     
    matches1=url1.match(reg)
    alert(matches1[0])
     
    ''.match(reg)
     
    matches2=url2.match(reg)
    alert(matches2[0])
    </script>
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre habitué
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2002
    Messages
    329
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2002
    Messages : 329
    Points : 139
    Points
    139
    Par défaut
    Ca ne va pas !
    Je récupère uniquement le nom du fichier et son extension.

    Sur une adresse du type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://www.monsite.fr/rep/rep2/photo.png
    je veux récupérer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    www.monsite.fr/rep/rep2/photo.png
    si et seulement si l'extension est celle d'une image png, jpg, gif, bmp

    Qui plus est, je ne parviens pas à faire fonctionner la fonction test()

  6. #6
    Inactif
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 63
    Points : 81
    Points
    81
    Par défaut
    Bonjour :
    http://www.jsfiddle.net/equ27/3/
    il faut aussi matcher jpe, jpeg pour l'extension du fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    var re = /^(https*\:\/\/)*([a-z0-9\-\.]+\.[a-z]{2,3}(\/\S*)?\.(jpe*g*|bmp|png|gif))$/i;
    var str = "http://www.mon.site.gouv.fr/reEp1/rep2/photo.jpeg";
    if(str.match(re)) {
        document.writeln('<br>chaine http(s)://: ', RegExp.$1);
        document.writeln('<br>url avec www : ', RegExp.$2);
        document.writeln('<br>path vers l\'image : ', RegExp.$3);
    }
    De rien...


    Ah et Sinon c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    var machaine = 'kikoo';
    var maRe = /kikoo/
     
    //on fait : 
    machaine.match(maRe); => resultat = soit null ou un Array
    maRe.test(machaine); => resultat = true ou false

Discussions similaires

  1. ShellExecute pour lien internet
    Par johweb dans le forum Web & réseau
    Réponses: 8
    Dernier message: 10/06/2007, 13h12
  2. Lien internet inactif
    Par Max Payne dans le forum IE
    Réponses: 1
    Dernier message: 15/02/2006, 14h24
  3. [VB]Liens internet
    Par misterbenj dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 10/02/2006, 20h55
  4. Lien internet
    Par fourniey dans le forum VBA Access
    Réponses: 26
    Dernier message: 30/09/2005, 00h14
  5. [XSL] Lien internet
    Par virgul dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 15/03/2005, 07h49

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