Comment faire pour utiliser des expressions régulières dans Microsoft Visual Basic 6.0

Traductions disponibles Traductions disponibles
Numéro d'article: 818802 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article étape par étape décrit comment créer des expressions régulières et comment utiliser des expressions régulières pour déterminer si des chaînes correspondent à des motifs spécifiques. Expressions régulières permettent d'analyse et de correspondance de chaînes à un modèle spécifique simple. Si vous utilisez les objets qui sont disponibles dans la bibliothèque Microsoft VBScript Regular Expressions 5.5, vous pouvez comparer une chaîne par rapport à un modèle spécifique, remplacer un motif de chaîne par une autre chaîne ou récupérer uniquement les parties d'une chaîne formatée. Cet article explique comment construire un motif pour analyser une chaîne qui contient plusieurs instances du même modèle.



Configuration requise


La liste suivante met en évidence le matériel recommandé, logiciel infrastructure réseau et service packs dont vous avez besoin :
  • Microsoft Visual Basic 6.0
Cet article suppose que vous êtes familiarisé avec les sujets suivants :
  • Visual Basic 6.0
  • Syntaxe des expressions régulières


Utilisation d'expressions régulières pour correspondre À un modèle



Dans Visual Basic 6.0, l'objet RegExp utilise des expressions régulières pour correspondre à un modèle. Les propriétés suivantes sont fournies par RegExp . Ces propriétés définir le motif pour comparer les chaînes qui sont passés à l'instance RegExp :
  • motif : une chaîne qui définit l'expression régulière.
  • IgnoreCase : une propriété booléenne qui indique si vous devez tester l'expression régulière par rapport à toutes les correspondances possibles dans une chaîne.
  • global : définit une valeur de type Boolean ou renvoie une valeur booléenne qui indique si un modèle doit correspondre à toutes les occurrences dans une chaîne de recherche entière ou si un modèle doit correspondre à la première occurrence.
RegExp fournit les méthodes suivantes pour déterminer si une chaîne correspond à un modèle spécifique d'une expression régulière :
  • test : renvoie une valeur de type Boolean qui indique si l'expression régulière peut correctement correspondre par rapport à la chaîne.
  • Exécution : renvoie un objet MatchCollection qui contient un objet correspondre pour chaque correspondance réussi.
Pour faire correspondre une chaîne à une expression régulière, procédez comme suit :
  1. Définir l'expression régulière en utilisant la méthode motif de la RegExp objet.
  2. Obtenir la chaîne à examiner avec le modèle.
  3. Définir la propriété IgnoreCase de l'objet RegExp sur True .
  4. Passer la chaîne obtenus à l'étape 2 comme argument de la méthode Execute de l' RegExp objet.
  5. Affectez la valeur renvoyée de l' exécution méthode à l'objet MatchCollection .

    L'objet MatchCollection contient des informations sur les chaînes correspondants.

note Vous pouvez également utiliser la méthode de test pour déterminer si la chaîne correspond à l'expression régulière spécifique.

Exemple pas à pas

  1. Démarrez Microsoft Visual Basic 6.0.
  2. Dans le menu Fichier , cliquez sur Nouveau projet .
  3. Cliquez sur exe standard dans la boîte de dialogue Nouveau projet , puis cliquez sur OK .

    Par défaut, Form1 est créé.
  4. Dans le menu projet , cliquez sur Références .
  5. Double-cliquez sur Microsoft VBScript des expressions régulières 5.5 , puis cliquez sur OK .
  6. Dans la boîte à outils, double-cliquez sur le bouton de commande .

    Par défaut Command1 est ajouté à l'écran.
  7. Double-cliquez sur Command1 pour ouvrir le code de fenêtre.
  8. Collez le code suivant dans le gestionnaire d'événements Command1_Click :
    MsgBox(TestRegExp("is.", "IS1 is2 IS3 is4"))
    Remarque dans cet exemple, le motif is. est comparé à la chaîne « IS1 is2 IS3 is4 ». Vous pouvez utiliser la période d'un caractère spécial (. ) en tant qu'un caractère générique, afin que plu d'un caractère soit mis en correspondance et affiché avec le modèle de recherche. Si vous ajoutez deux périodes dans le modèle de recherche, vous voyez deux caractères supplémentaires. Si vous n'utilisez pas les périodes, vous ne voyez le modèle de recherche.
  9. Ajoutez la fonction suivante après le gestionnaire d'événements Command1_click :
    Function TestRegExp(myPattern As String, myString As String)
       'Create objects.
       Dim objRegExp As RegExp
       Dim objMatch As Match
       Dim colMatches   As MatchCollection
       Dim RetStr As String
       
       ' Create a regular expression object.
       Set objRegExp = New RegExp
    
       'Set the pattern by using the Pattern property.
       objRegExp.Pattern = myPattern
    
       ' Set Case Insensitivity.
       objRegExp.IgnoreCase = True
    
       'Set global applicability.
       objRegExp.Global = True
    
       'Test whether the String can be compared.
       If (objRegExp.Test(myString) = True) Then
    
       'Get the matches.
        Set colMatches = objRegExp.Execute(myString)   ' Execute search.
    
        For Each objMatch In colMatches   ' Iterate Matches collection.
          RetStr = RetStr & "Match found at position "
          RetStr = RetStr & objMatch.FirstIndex & ". Match Value is '"
          RetStr = RetStr & objMatch.Value & "'." & vbCrLf
        Next
       Else
        RetStr = "String Matching Failed"
       End If
       TestRegExp = RetStr
    End Function
  10. Dans le menu exécuter , cliquez sur Démarrer pour exécuter l'application.
  11. Cliquez sur Command1 .

    Une boîte de message s'affiche qui renvoie toutes les occurrences de dans la chaîne IS1 is2 IS3 is4 .

Références

Pour plus d'informations, reportez-vous aux sites Web MSDN aux adresses suivantes :
http://msdn2.microsoft.com/en-us/library/6wzad2b2.aspx

Propriétés

Numéro d'article: 818802 - Dernière mise à jour: lundi 26 novembre 2007 - Version: 3.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
  • Microsoft Visual Basic 6.0 Édition initiation
  • Microsoft Visual Basic 6.0 Édition professionnelle
Mots-clés : 
kbmt kbprogramming kbstring kbhowtomaster KB818802 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 818802
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com