Testeur de regex (regular expressions)

Soyez le premier à donner votre avis sur cette source.

Vue 18 270 fois - Téléchargée 845 fois


Description

Voici un petit prog que je m'étais fait pour tester mes regex quand j'ai développé http://newsgroup.codes-sources.com/ (voir la colorisation des messages sur ce site pour comprendre l'utilité) car c bien pratique les regex mais des fois, faut un peu faire du essai/echec pour arriver à ce que l'on veut faire :-)
Les regex ont l'avantage d'être très rapide et si on les maîtrise bien, on peut faire des choses vraiment puissantes avec avec un temps d'éxécution minime.

Source / Exemple :


' Voir le zip mais voici le code qui est dans le frm

Option Explicit
    Private ObjRegex
    Private ObjRegexTrouve

Private Sub Command1_Click()
    On Error Resume Next
    Err.Clear
    
    Dim TmpTxtHTML, i
    
    Set ObjRegex = New RegExp
    
    TmpTxtHTML = Me.TxtHTML
    Me.TxtResultat.Text = ""
    Me.TxtResultat2.Text = ""
    
    ObjRegex.Global = True
    ObjRegex.IgnoreCase = True
    
    ' Définition de la patern
    ObjRegex.Pattern = "" & Me.TxtReg & ""
    
    ' Remplacement des occurences
    TmpTxtHTML = ObjRegex.Replace(TmpTxtHTML, Me.TxtRegRepl.Text)
    Me.TxtResultat = TmpTxtHTML
        
    TmpTxtHTML = Me.TxtHTML
    
    ' Définition de la patern
    ObjRegex.Pattern = "" & Me.TxtReg & ""
    ' Execution de la Regex
    Set ObjRegexTrouve = ObjRegex.Execute(TmpTxtHTML)
    
    ' Pour chaque occurence trouvé, on met Occurence N° devant
    If ObjRegexTrouve.Count > 0 Then
        For i = 0 To ObjRegexTrouve.Count - 1
            DoEvents
            Me.TxtResultat2 = Me.TxtResultat2 & vbCrLf & "[Occurence " & i & "]" & ObjRegexTrouve(i).Value
        Next
    Else
        Me.TxtResultat2 = TmpTxtHTML
    End If
    
    ' S'il y a une erreur dans la regex, on l'affiche dans une msgBox
    If Err.Number <> 0 Then MsgBox ("Erreur dans le regex : " & vbCrLf & Err.Description)
End Sub

Conclusion :


N'oubliez pas de faire référence à "Microsoft VBScript Regular Expression 5.5" (ou 5.6 selon la version que vous avez :)
Si vous n'avez pas ça, dans la liste des références, alors, allez télécharger la dernière version de "Windows script" (5.6 actuelement sur : http://www.microsoft.com/france/scripting/ )

P.S : JE NE SUIS PAS UN EXPERT DES REGEX alors si vous avez des questions à ce sujet, ne me les posez pas, vous n'aurez pas de réponse :) (posez-les dans le forum, merci)
P.S2 : J'en ferai une version ASP d'ici peu pour ceux que ça intéresse (je la mettrai sur www.aspfr.com biensûr ;-) )

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
62
Kimmelf2 => il faut ajouter la reference : Microsoft VbScript 5.5 Regular Expressions

et pour ceux qui se demande comment écrire telle ou telle RegExp, rien de mieux que l'experimentation :
http://www.vbfrance.com/codes/REGEXP-WORKSHOP_17331.aspx
Messages postés
26
Date d'inscription
mercredi 26 novembre 2003
Statut
Membre
Dernière intervention
13 juin 2009

Très bon
Messages postés
267
Date d'inscription
lundi 22 septembre 2003
Statut
Membre
Dernière intervention
27 novembre 2005

ou tu trouve les regexp ???

j'ai vb5 pro et je les trouve pas ...
Messages postés
186
Date d'inscription
lundi 11 mars 2002
Statut
Membre
Dernière intervention
30 novembre 2010
2
Putain j'ai mis une source, j'avais même po vu qu'il y avait déja.
Pour ceux que ca intéresse, ya une doc sur les RegExp avec la source.
http://www.vbfrance.com/article.aspx?Val=5318
Messages postés
161
Date d'inscription
mercredi 11 avril 2001
Statut
Membre
Dernière intervention
10 mars 2002

Nix, juste une suggestion par rapport a la fonction de recherche sur ton (tes) site(s), ce serait bien que tu rajoutes la possibilité de filtrer les réponses en fonction de ce que l'utilisateur veut trouver : des codes avec zip, capure, zip + capture ou peut importe (t'as qu'a mettre des checkboxes avec O Zip O Capture et on selectionne celles qu'on veut ) ce serait bien, car moi, par exemple, je ne regarde quasiment que les codes qui contiennent un zip et une capture...

merci bien,

a++

ciao
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.