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.test(String) ou String.match(RegExp) [RegExp]


Sujet :

JavaScript

  1. #1
    Membre Expert
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activit� : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Par d�faut RegExp.test(String) ou String.match(RegExp)
    Salut,

    Si votre expression rationnelle � un motif constant, quelle est la m�thode que vous utilisez habituellement ?

    1) La m�thode RegExp.test() ?
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    var reg=/\.(?:bmp|gif|jpe?g|png)$/i;
    if(reg.test(str))
    	// Occurence trouvée (True renvoyé)
    else
    	// Occurence NON trouvée (False renvoyé)
    2) La m�thode String.math() ?
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    if (str.match(/\.(?:bmp|gif|jpe?g|png)$/i))
    	// Occurence trouvée ET renvoyée
    else
    	// Occurence NON trouvée (NULL renvoyé)
    Concr�temment... Nous avons ci-dessous deux fonctions renvoyant un r�sultat bool�en.

    1) Utilisant RegExp.test()
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    function is_Extension(str){
    	var reg=/\.(?:bmp|gif|jpe?g|png)$/i;
    	return reg.test(str);
    }
    2) Utilsant String.math()
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    function is_Extension(str){
    	var res=str.match(/\.(?:bmp|gif|jpe?g|png)$/i);
    	return (res)?true:false;
    }
    Bien qu'elles jouent le m�me r�le toutes les deux, je voudrais savoir pourquoi privil�gier l'une et pas l'autre.

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Mai 2010
    Messages
    345
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 345
    Par d�faut
    Voila pourquoi je me sert de match
    http://www.jsfiddle.net/HV4vH/
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
     
    var str = "21/12/2012";
     
    if(str.match(/^(\d\d)\/(\d\d)\/(\d{4})$/)) {
        document.write('la date trouvée est le jour: ', RegExp.$1, ', mois: ', RegExp.$2, ', année: ', RegExp.$3);   
    } else {
      document.write('date pas trouvée');  
    }
    Je ne m'en sers que si je dois traiter les donn�es match�es derri�re. Sinon j'utilise test

  3. #3
    Membre Expert
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activit� : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    'la date trouvée est le jour: ', RegExp.$1, ', mois: ', RegExp.$2, ', année: ', RegExp.$3
    Royal dukej

    Je ne savais pas que nous pouvions obtenir les donn�es captur�e de cette mani�re avec la m�thode match.

    C'est bon... pour la m�thode String.math()

    Merci

  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 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    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 659
    Billets dans le blog
    1
    Par d�faut
    je ne me sers de test que pour verifier un format le retour de boolean est fait pour �a.
    pour le reste exec ou match

    http://www.developpez.net/forums/d93...re-javascript/
    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 Expert
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activit� : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Par d�faut
    J'avais commen�er � lire ta contribution SpaceFrog parce que ton id�e d'�muler le preg_match_all de php est g�niale mais... c'�tait flou pour moi.

    Mais l�, tu as bien fait de donner le lien, je pourrais �tudier ton script � t�te repos�e.

    Sinon, c'est Ok...

    1) La m�thode RegExp.test() si on d�sire uniquement savoir si les donn�es (correpondant au motif) sont trouv�es.

    2) La m�hode String.match() si on d�sire traiter les donn�es captur�es.

    Merci

  6. #6
    Membre Expert
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activit� : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Par d�faut Erratum !
    Ne pouvant pas �diter les posts pr�c�dents, je remonte le sujet afin d'�viter toute confusion � la lecture de certaines lignes.

    En effet, des erreurs de frappe sont pr�sentes.

    Il fallait lire :
    et non
    Merci � Arimbourg pour m'avoir signal� l'erreur.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 2
    Dernier message: 11/04/2015, 15h56
  2. RegExp pour obtenir String entre string et charact�res
    Par pjmorce dans le forum API standards et tierces
    R�ponses: 4
    Dernier message: 10/06/2011, 15h15
  3. Regexp : Trouver ? dans un String
    Par rXpCH dans le forum Collection et Stream
    R�ponses: 5
    Dernier message: 07/06/2011, 09h06
  4. [regexp] Condition sur un string
    Par Benladouche dans le forum MATLAB
    R�ponses: 7
    Dernier message: 15/07/2009, 10h26
  5. regexp + fichier html => pourquoi �a match pas?
    Par noobC dans le forum Langage
    R�ponses: 5
    Dernier message: 13/01/2009, 18h34

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