Como Utilizar Expressões Regulares no Microsoft Visual Basic 6.0

Traduções de Artigos Traduções de Artigos
Artigo: 818802 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Este artigo passo-a-passo descreve como criar e utilizar expressões regulares para determinar se as cadeias correspondem a padrões específicos. As expressões regulares permitem uma análise e correspondência simples de cadeias com um padrão específico. Se utilizar os objectos disponíveis na biblioteca Microsoft VBScript Regular Expressions 5.5, poderá comparar uma cadeia com um padrão específico, substituir um padrão de cadeia por outra cadeia ou obter apenas partes de uma cadeia formatada. Este artigo descreve como criar um padrão para analisar uma cadeia que contém várias instâncias do mesmo padrão.



Requisitos


A lista seguinte descreve o hardware, software, infra-estrutura de rede e Service Packs recomendados de que necessita:
  • Microsoft Visual Basic 6.0
Este artigo pressupõe que está familiarizado com os seguintes tópicos:
  • Visual Basic 6.0
  • Sintaxe de expressões regulares


Utilizar Expressões Regulares para Corresponder a um Padrão



No Visual Basic 6.0, o objecto RegExp utiliza expressões regulares para corresponder a um padrão. As propriedades seguintes são fornecidas por RegExp. Estas propriedades definem o padrão para comparar as cadeias passadas para a instância de RegExp:
  • Pattern: Uma cadeia que define a expressão regular.
  • IgnoreCase: Uma propriedade booleana que indica se tem de testar a expressão regular contra todas as correspondências possíveis numa cadeia.
  • Global: Define um valor booleano ou devolve um valor booleano que indica se um padrão tem de corresponder a todas as ocorrências de uma cadeia de procura completa ou se tem de corresponder apenas à primeira ocorrência.
O RegExp fornece os métodos seguintes para determinar se uma cadeia corresponde a um padrão específico de uma expressão regular:
  • Test: Devolve um valor booleano que indica se a expressão regular pode ser correspondida à cadeia com êxito.
  • Execute: Devolve um objecto MatchCollection que contém um objecto Match para cada correspondência com êxito.
Para corresponder uma cadeia a uma expressão regular, siga estes passos:
  1. Defina a expressão regular utilizando o método Pattern do objecto RegExp.
  2. Obtenha a cadeia para examinar o padrão.
  3. Defina a propriedade IgnoreCase do objecto RegExp como True.
  4. Passe a cadeia obtida no passo 2 como um argumento para o método Execute do objecto RegExp.
  5. Atribua o valor devolvido pelo método Execute ao objecto MatchCollection.

    O objecto MatchCollection contém informações sobre as cadeias correspondidas.

Nota Também pode utilizar o método Test para determinar se a cadeia corresponde à expressão regular específica.

Exemplo Passo-a-passo

  1. Inicie o Microsoft Visual Basic 6.0.
  2. No menu File, clique em New Project.
  3. Clique em Standard Exe na caixa de diálogo New Project e, em seguida, clique em OK.

    Por predefinição, é criado o Form1.
  4. No menu Project, clique em References.
  5. Faça duplo clique em Microsoft VBScript Regular Expressions 5.5 e clique em OK.
  6. Na caixa de ferramentas, faça duplo clique em CommandButton.

    Por predefinição, Command1 é adicionado ao formulário.
  7. Faça duplo clique em Command1 para abrir a janela Code.
  8. Cole o código seguinte no processador de eventos Command1_Click:
    MsgBox(TestRegExp("is.", "IS1 is2 IS3 is4"))
    Nota Neste exemplo, o padrãois. é verificado na cadeia "IS1 is2 IS3 is4". Pode utilizar o carácter especial ponto (.) como carácter universal, para que um carácter adicional seja correspondido e apresentado com o padrão de procura. Se adicionar dois pontos ao padrão de procura, verá dois caracteres adicionais. Se não utilizar nenhum ponto, só verá o padrão de procura.
  9. Adicione a função seguinte após o processador de eventos 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. No menu Run, clique em Start para executar a aplicação.
  11. Clique em Command1.

    É apresentada uma mensagem que devolve todas as ocorrências de is na cadeia IS1 is2 IS3 is4.

Referências

Para obter mais informações, visite os seguintes Web sites da MSDN:
http://msdn2.microsoft.com/en-us/library/6wzad2b2.aspx

Propriedades

Artigo: 818802 - Última revisão: 28 de dezembro de 2007 - Revisão: 3.1
A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic 6.0 Enterprise Edition
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 6.0 Professional Edition
Palavras-chave: 
kbhowtomaster kbprogramming kbstring KB818802

Submeter comentários

 

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