Como Utilizar Expressões Regulares no Microsoft Visual Basic 6.0

Este artigo foi arquivado. Este artigo é oferecido "tal como está" e deixará de ser actualizado.
Para obter uma versão deste artigo referente ao Visual Basic .NET, consulte 301264.
Para obter uma versão deste artigo referente ao Microsoft Visual C# .NET, consulte 308252.

NESTA TAREFA

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.

Regressar ao início

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
Regressar ao início

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.

Regressar ao início

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 = RetStrEnd 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.
Regressar ao início
Propriedades

ID do Artigo: 818802 - Última Revisão: 12/08/2015 02:34:01 - Revisão: 3.1

  • Microsoft Visual Basic 6.0 Enterprise Edition
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • kbnosurvey kbarchive kbhowtomaster kbprogramming kbstring KB818802
Esta informação foi útil?