Como: Corresponde a uma string em relação a um padrão

Se você quiser saber se uma expressão de Tipo de dados de sequência de caracteres (Visual Basic) satisfaz um padrão, então você pode usar o Operador Like (Visual Basic).

Like leva dois operandos.O operando esquerdo é uma expressão em seqüência e o operando da direita é uma seqüência de caracteres que contém o padrão a ser usado para correspondência.Like Retorna um Boolean valor que indica se a expressão de cadeia de caracteres satisfaz o padrão.

Você pode fazer a correspondência entre cada caractere na expressão de sequência de caracteres e um caractere específico, um caractere curinga, uma lista de caracteres ou um intervalo de caracteres.As posições das especificações na sequência de caracteres de padrão correspondem às posições dos caracteres a ser verificados por correspondência na expressão em sequência de caracteres.

Para corresponder um caractere na expressão em sequência de caracteres com um caractere específico

  • Coloque o caractere específico diretamente na sequência de caracteres do padrão.Certos caracteres especiais devem ser colocados entre colchetes ([ ]).Para obter mais informações, consulte Operador Like (Visual Basic).

    O exemplo a seguir testa se myString consiste exatamente do único caractere H.

    Dim sMatch As Boolean = myString Like "H"
    

Para corresponder um caractere na expressão em sequência de caracteres com um caractere curinga

  • Coloque um ponto de interrogação (?) na sequência de caracteres do padrão.Qualquer caractere válido nessa posição é uma correspondência com êxito.

    O exemplo a seguir testa se myString consiste do único caractere W seguido por exatamente dois caracteres de quaisquer valores.

    Dim sMatch As Boolean = myString Like "W??"
    

Para corresponder um caractere na expressão em sequência de caracteres com uma lista de caracteres

  • Coloque colchetes ([ ]) na sequência de caracteres do padrão, e dentro dos colchetes coloque a lista de caracteres.Não separe os caracteres com vírgulas ou qualquer outro separador.Qualquer caractere único na lista é uma correspondência com êxito.

    O exemplo a seguir testa se myString consiste de qualquer caractere válido seguido por exatamente um dos caracteres A, C, ou E.

    Dim sMatch As Boolean = myString Like "?[ACE]"
    

    Observe que essa correspondência diferencia maiúsculas de minúsculas.

Para corresponder um caractere na expressão em sequência de caracteres com um intervalo de caracteres

  • Put brackets ([ ]) in the pattern string, and inside the brackets put the lowest and highest characters in the range, separated by a hyphen (–).Qualquer caractere único dentro do intervalo é uma correspondência com êxito.

    O exemplo a seguir testa se myString consiste dos caracteres num seguidos por exatamente um dos caracteres i, j, k, l, m, ou n.

    Dim sMatch As Boolean = myString Like "num[i-m]"
    

    Observe que essa correspondência diferencia maiúsculas de minúsculas.

Correspondência de sequências de caracteres vazias

Like trata a sequência [] como uma sequência de caracteres de comprimento nulo ("").Você pode usar [] para testar se a expressão de sequência de caracteres inteira está vazia, mas você não pode usá-los para testar se uma determinada posição na expressão de sequência de caracteres está vazia.Se uma posição vazia é uma das opções necessárias para testar, você pode usar Like mais de uma vez.

Para corresponder um caractere na expressão em sequência de caracteres com uma lista de caracteres ou nenhum caractere

  1. Chame o operador Like duas vezes na mesma expressão em sequência, e conecte as duas chamadas com o Operador Or (Visual Basic) ou o Operador OrElse.

  2. Na sequência de caracteres do padrão para a primeira cláusula Like, inclua a lista de caracteres entre colchetes ([ ]).

  3. Na sequência de caracteres do padrão para a segunda cláusula Like, não coloque nenhum caractere na posição em questão.

    The following example tests the seven-digit telephone number phoneNum for exactly three numeric digits, followed by a space, a hyphen (–), a period (.), or no character at all, followed by exactly four numeric digits.

    Dim sMatch As Boolean = _
      (phoneNum Like "###[ -.]####") OrElse (phoneNum Like "#######")
    

Consulte também

Conceitos

Operadores e expressões em Visual Basic

Referência

Operadores de comparação (Visual Basic)

Operador Like (Visual Basic)

Tipo de dados de sequência de caracteres (Visual Basic)