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

VBScript Discussion :

Quantificateur inattendu, Regex


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre extrêmement actif
    Avatar de MarieKisSlaJoue
    Homme Profil pro
    Ingénieur Cloud
    Inscrit en
    Mai 2012
    Messages
    1 145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Roumanie

    Informations professionnelles :
    Activité : Ingénieur Cloud
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 145
    Billets dans le blog
    20
    Par défaut Quantificateur inattendu, Regex
    Bonjour, je suis en VbScript, et je veut lister tous les fichiers qui finissent par ISO

    pour l'instant j'ai écrit ça

    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
    20
    21
    22
    23
     Sub iniMenuIso
    		Dim regEx , occurrences
    		Dim fso, fichier, fileItem
    		Dim i, imax, z, valeur, cible, liste
    		Dim client
     
    		Set fso = CreateObject("Scripting.FileSystemObject")
    		Set regEx = New RegExp
     
    		 regEx.Pattern = "*\.[iso]$"
     
     
    		'début de l'énumération
    		For Each client in getListeClient()
    			For Each fichier In fso.GetFolder(path & "\" & client & "\").Files
    				if regEx.Test(fichier.name ) then
    					msgbox fichier.name
    				End If
    			Next
    		Next
     
     
       End Sub
    Mais j'ai une erreur sur cette ligne if regEx.Test(fichier.name ) then
    Qui me dit Quantificateur inattendu. Je ne comprend pas pourquoi et je ne maitrise pas bien les regexs.

    Connaissez vous sinon un autre moyen de parvenir à ce résultat
    Ce post à été écrit par un panda
    Apollo 11 - AGC revue de code
    -- qwerty keybord

  2. #2
    Membre Expert Avatar de tsuji
    Inscrit en
    Octobre 2011
    Messages
    1 558
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 558
    Par défaut
    [0] Le * pose le problème: c'est un qualificateur qui ne qualifie rien.
    regEx.Pattern = "*\.[iso]$"
    [1] Et puis, "[iso]" signifie un charset. L'expression va matcher positive toutes particules "i" ou "s" ou "o" une fois c'est tout. Ce n'est bien entendu pas ce qu'on cherche à faire. Mettez simplement "iso" avec la note [2].

    [2] Et puis, le match va être sensitive au cas par défaut. Pour les fichiers en windows, il va souvent trop strict, n'est-ce pas?

    Donc, en somme, le script devrait s'écrire comme ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    regEx.Pattern = "\.iso$"
    regEx.IgnoreCase=true
    Voilà.

  3. #3
    Membre extrêmement actif
    Avatar de MarieKisSlaJoue
    Homme Profil pro
    Ingénieur Cloud
    Inscrit en
    Mai 2012
    Messages
    1 145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Roumanie

    Informations professionnelles :
    Activité : Ingénieur Cloud
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 145
    Billets dans le blog
    20
    Par défaut
    OK, je te remercie de tes explication.
    Ce post à été écrit par un panda
    Apollo 11 - AGC revue de code
    -- qwerty keybord

  4. #4
    Expert confirmé
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 844
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 844
    Par défaut

    Pour tester la validité de vos RegExp ===> http://regexpal.com/

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

Discussions similaires

  1. [DOS] goto inattendu
    Par isidore dans le forum Scripts/Batch
    Réponses: 6
    Dernier message: 26/11/2009, 00h06
  2. [RegExp] Quantificateur inattendu
    Par pc.bertineau dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/07/2007, 16h57
  3. [Regex] Vérifier qu'une chaîne respecte une expression régulière
    Par PeteMitchell dans le forum Collection et Stream
    Réponses: 7
    Dernier message: 13/05/2004, 14h22
  4. [regex][string] replaceAll bogué ?
    Par 7eme dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 13/11/2003, 16h36
  5. Cherche regex...
    Par laurent_h dans le forum C
    Réponses: 4
    Dernier message: 31/03/2003, 11h24

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