Partilhar via


Pesquisar texto com expressões regulares

Expressões regulares são uma notação concisa e flexível para localizar e substituir padrões de texto. Um conjunto específico de expressões regulares pode ser usado no campo Localizar da caixa de diálogo Localizar e Substituir do SQL Server Management Studio.

Para localizar usando expressões regulares

  1. Para habilitar o uso de expressões regulares no campo Localizar o quê durante as operações QuickFind, FindinFiles, Quick Replace ou Replace in Files, selecione a opção Usar em Opções de Localização e escolha Expressões Regulares.

  2. O botão triangular Lista de Referência ao lado do campo Localizar torna-se disponível. Clique neste botão para exibir uma lista das expressões regulares mais usadas. Quando você escolhe qualquer item do Construtor de Expressões, ele é inserido na cadeia de caracteres Localizar o quê.

Observação

Há diferenças de sintaxe entre as expressões regulares que podem ser usadas em Localizar quais cadeias de caracteres e aquelas que são válidas na programação do Microsoft .NET Framework. Por exemplo, em Localizar e Substituir, a notação {} de chaves é usada para expressões marcadas. Portanto, a expressão "zo{1}" corresponde a todas as ocorrências de "zo" seguidas pela marca 1, como em "Alonzo1" e "Gonzo1". No entanto, no .NET Framework, a notação {} é usada para quantificadores. Portanto, a expressão "zo{1}" corresponde a todas as ocorrências de "z" seguidas por exatamente um "o", como em "zona", mas não "zoo".

A tabela a seguir descreve as expressões regulares disponíveis na Lista de Referência.

Expressão Sintaxe Descrição
Qualquer caractere . Corresponde a qualquer caractere único, exceto uma quebra de linha.
Zero ou mais * Corresponde a zero ou mais ocorrências da expressão anterior, encontrando todas as correspondências possíveis.
Um ou mais + Corresponde a pelo menos uma ocorrência da expressão anterior.
Início de linha ^ Ancora a cadeia de caracteres de correspondência ao início de uma linha.
Término de linha $ Ancora a cadeia de caracteres de correspondência ao final de uma linha.
Início da palavra < Corresponde somente quando uma palavra começa neste ponto do texto.
Fim da palavra > Corresponde somente quando uma palavra termina neste ponto do texto.
Quebra de linha \n Corresponde a uma quebra de linha independente da plataforma. Em uma expressão Replace, insere uma quebra de linha.
Qualquer caractere no conjunto [] Corresponde a qualquer um dos caracteres dentro do []. Para especificar um intervalo de caracteres, liste o caractere inicial e final separado por um traço (-), como em [a-z].
Qualquer caractere que não está no conjunto [^...] Corresponde a qualquer caractere que não está no conjunto de caracteres após o ^.
Ou | Corresponde à expressão anterior ou à do símbolo OR (|). Usado predominantemente dentro de um grupo. Por exemplo, o banho de esponja ou lama corresponde a "banho de esponja" e "banho de lama".
Fuga |Corresponde ao caractere que segue a barra invertida (\) como um literal. Isso permite que você encontre os caracteres usados na notação de expressão regular, como { e ^. Por exemplo, \^ Pesquisa o caractere ^.
Expressão marcada {} Corresponde ao texto marcado com a expressão delimitada por símbolos.
Identificador C/C++ :i Corresponde à expressão ([a-zA-Z_$][a-zA-Z0-9_$]*).
Cadeia de caracteres entre aspas :q Corresponde à expressão (("[^"]*")|(' [^']*')).
Espaço ou Tab :b Corresponde a caracteres de espaço ou tabulação.
Número Inteiro :z Corresponde à expressão ([0-9]+).

A lista de todas as expressões regulares válidas nas operações Localizar e Substituir é maior do que pode ser exibida na Lista de Referências. Você também pode inserir qualquer uma das seguintes expressões regulares em uma cadeia de caracteres Localizar:

Expressão Sintaxe Descrição
Mínimo - zero ou mais @ Corresponde a zero ou mais ocorrências da expressão anterior, correspondendo ao menor número possível de caracteres.
Mínimo - um ou mais # Corresponde a uma ou mais ocorrências da expressão anterior, correspondendo ao menor número possível de caracteres.
Repetir n vezes ^n Corresponde a n ocorrências da expressão anterior. Por exemplo, [0-9]^4 corresponde a qualquer sequência de quatro dígitos.
Agrupamento () Agrupa uma subexpressão.
enésimo texto marcado \n Em uma expressão Localizar ou Substituir, indica o texto correspondente à n-ésima expressão marcada, em que n é um número de 1 a 9.

Em uma expressão Replace , \0 insere todo o texto correspondente.
Campo justificado à direita \(w,n) Em uma expressão Replace, alinha à direita a enésima expressão marcada em um campo com pelo menos w caracteres de largura.
Campo justificado à esquerda \(-w,n) Em uma expressão Replace, justifica à esquerda a enésima expressão marcada em um campo com pelo menos w caracteres de largura mínima.
Impedir partida ~(X) Impede uma correspondência quando X aparece neste ponto na expressão. Por exemplo, real~(ity) corresponde ao "real" em "realty" e "really", mas não ao "real" na "realidade".
Caractere alfanumérico :um Corresponde à expressão ([a-zA-Z0-9]).
Caractere alfabético :c Corresponde à expressão ([a-zA-Z]).
Dígito decimal :d Corresponde à expressão ([0-9]).
Dígito hexadecimal :h Corresponde à expressão ([0-9a-fA-F]+).
Número racional :n Corresponde à expressão (([0-9]+.[0-9]*)|([0-9]*.[0-9]+)|([0-9]+)).
Cadeia de caracteres alfabética :w Corresponde à expressão ([a-zA-Z]+).
Fuga \e Unicode U+001B.
Sino \g Unicode U+0007.
Tecla Backspace \h Unicode U+0008.
Guia \t Corresponde a um caractere de tabulação, Unicode U+0009.
Caractere Unicode \x#### ou \u#### Corresponde a um caractere fornecido pelo valor Unicode em que #### é dígitos hexadecimal. Você pode especificar um caractere fora do Plano Multilíngue Básico (ou seja, um substituto) com o ponto de código ISO 10646 ou com dois pontos de código Unicode dando os valores do par substituto.

A tabela a seguir lista a sintaxe para correspondência por propriedades padrão de caracteres Unicode. A abreviação de duas letras é a mesma listada no banco de dados de propriedades de caractere Unicode. Eles podem ser especificados como parte de um conjunto de caracteres. Por exemplo, a expressão [:Nd:Nl:No] corresponde a qualquer tipo de dígito.

Expressão Sintaxe Descrição
Letra maiúscula :Lu Corresponde a qualquer uma letra maiúscula. Por exemplo, :Luhe corresponde a «O», mas não «o».
Letra minúscula :Ll Corresponde a qualquer letra minúscula. Por exemplo, :Llhe corresponde a "the" mas não a "The".
Letra em maiúscula inicial :Tenente Corresponde a caracteres que combinam uma letra maiúscula com uma letra minúscula, como Nj e Dz.
Letra modificadora :Lm Corresponde a letras ou pontuação, como vírgulas, acentos cruzados e prime duplo, usados para indicar modificações na letra anterior.
Outra letra :Lo Corresponde a outras letras, como letra gótica ahsa.
Dígito decimal :Nd Corresponde a dígitos decimais, como 0-9 e seus equivalentes de largura completa.
Dígito de letra :Nl Corresponde a números representados por letras, como numerais romanos e número zero ideográfico.
Outro dígito :Não Corresponde a outros dígitos, como o antigo número um itálico.
Pontuação aberta :Ps Corresponde à pontuação de abertura, como colchetes abertos e chaves.
Pontuação de fechamento :Pe Corresponde à pontuação de fechamento, como colchetes de fechamento e chaves de fechamento.
Pontuação de aspas inicial :Pi Corresponde às aspas duplas iniciais.
Pontuação final das aspas :Pf Corresponde às aspas simples e às aspas duplas finais.
Pontuação de traço :Pd Corresponde ao hífen.
Pontuação do conector :Computador pessoal Corresponde ao caractere de sublinhado ou à marca de sublinhado.
Outros sinais de pontuação :Po Correspondências de (,), ?, ", !, @, #, %, &, *, \, (:), (;), ' e /.
Separador de espaço :Zs Corresponde a espaços em branco.
Separador de linha :Zl Corresponde ao caractere Unicode U+2028.
Separador de parágrafo :Zp Corresponde ao caractere Unicode U+2029.
Marca de não espaçamento :Mn Corresponde a marcas sem espaçamento.
Marca combinatória :Mc Corresponde a marcas de combinação.
Marca de delimitamento :Me Corresponde a marcas de delimitação.
Símbolo de matemática :Sm Correspondências +, =, ~, | e <, >.
Símbolo da moeda :Sc Corresponde a $ e outros símbolos de moeda.
Símbolo do modificador :Sk Corresponde a símbolos modificadores, como acento circunflexo, acento grave e macron.
Outro símbolo :Então Corresponde a outros símbolos, como o símbolo de direitos autorais, o símbolo de pilcrow e o símbolo de grau.
Outro controle :Cc Corresponde ao fim da linha.
Outro formato :Cf Caractere de controle de formatação, como os caracteres de controle bidirecional.
Substituto :Cs Corresponde a metade de um par substitutivo.
Outro uso privado :Co Corresponde a qualquer caractere da área de uso privado.
Outros não atribuídos :Cn Corresponde a caracteres que não correspondem a um caractere Unicode.

Além das propriedades de caractere Unicode padrão, as propriedades adicionais a seguir podem ser especificadas como parte de um conjunto de caracteres.

Expressão Sintaxe Descrição
Alfa :Al Corresponde a qualquer um caractere. Por exemplo, :Alhe corresponde a palavras como "O", "então" e "alcançou".
Numérico :Nu Corresponde a qualquer número ou dígito.
Pontuação :Pu Corresponde a qualquer marca de pontuação, como ?, @, ', e assim por diante.
Espaço em branco :Wh Corresponde a todos os tipos de espaços em branco, incluindo espaços utilizados em publicações e espaços ideográficos.
Bidi :Bi Corresponde a caracteres de escritas que vão da direita para a esquerda, como as do árabe e hebraico.
Hangul, o alfabeto coreano :Ha Corresponde ao Hangul coreano e aos Jamos combinados.
Hiragana :Oi Corresponde a caracteres hiragana.
Katakana :Ka Corresponde a caracteres katakana.
Ideographic/Han/Kanji :Id Corresponde a caracteres ideográficos, como Han e Kanji.

Consulte Também

Localizar e substituir
Pesquisar texto com curingas