Pesquisar texto com expressões regulares
As expressões regulares são notação concisa e flexível para pesquisa e substituição de 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 fazer localização usando expressões regulares
Para habilitar o uso de expressões regulares no campo Localizar durante operações de Localização Rápida, Localizar nos Arquivos, Substituição Rápida ou Substituir nos Arquivos, selecione a opção Usar em Opções de Localização e selecione Expressões Regulares.
O botão triangular Lista de Referências próximo ao campo Localizar torna-se disponível. Clique no botão para exibir uma lista das expressões regulares usadas frequentemente. Quando você seleciona qualquer item do Construtor de Expressões, o item é inserido na cadeia de caracteres Localizar.
Observação |
---|
Há diferenças de sintaxe entre as expressões regulares que podem ser usadas em cadeias Localizar 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. Então a expressão "zo {1}" corresponde a todas as ocorrências de "zo" seguidas pela marca 1, como em "Alonzo1" e "Gonzo1". Entretanto, dentro do .NET Framework, a notação {} é usada para quantificadores. Então a expressão "zo{1}" corresponde a todas as ocorrências de "z" seguidas exatamente por um “o”, como em "zone" e não "zoo". |
A tabela a seguir descreve as expressões regulares disponíveis na Lista de Referências.
Expressão |
Sintaxe |
Descrição |
---|---|---|
Qualquer caractere |
. |
Faz a correspondência de qualquer caractere único menos uma quebra de linha. |
Zero ou mais |
* |
Faz a correspondência de zero ou mais ocorrências da expressão precedente, com todas as correspondentes possíveis. |
Um ou mais |
+ |
Faz a correspondência de pelo menos uma ocorrência da expressão precedente. |
Início de linha |
^ |
Ancora a cadeia de caracteres correspondente ao início de uma linha. |
Término de linha |
$ |
Ancora a cadeia de caracteres correspondente ao fim de uma linha. |
Início de uma palavra |
< |
Faz a correspondência apenas quando uma palavra começar neste ponto do texto. |
Término de palavra |
> |
Faz a correspondência só quando uma palavra terminar neste ponto do texto. |
Quebra de linha |
\n |
Faz a correspondência a uma quebra de linha independente de plataforma. Em uma expressão de substituição, insere uma quebra de linha. |
Qualquer caractere no conjunto |
[] |
Faz a correspondência de qualquer um dos caracteres dentro de []. Para especificar um intervalo de caracteres, relacione o caractere de início e término separado por um traço (-), como em [a-z]. |
Qualquer caractere que não faz parte do conjunto |
[^...] |
Faz a correspondência de qualquer caractere que não pertence ao conjunto de caracteres depois de ^. |
Ou |
| |
Faz a correspondência da expressão antes ou depois do símbolo OR (|). Usada principalmente dentro de grupos. Por exemplo, banho (esponja|lama) corresponde a "banho de esponja" e "banho de lama." |
Escape |
\ |
Faz a correspondência do caractere que segue a barra invertida (\) como um literal. Isso permite que você encontre os caracteres usados em notação de expressão regular, como { e ^. Por exemplo, \^ pesquisa pelo caractere ^. |
Expressão marcada |
{} |
Corresponde o texto marcado com a expressão anexada. |
Identificador do C/C++ |
:i |
Faz a correspondência da expressão ([a-zA-Z_$][a-zA-Z0-9_$]*). |
Cadeia de caracteres entre aspas |
:q |
Faz a correspondência da expressão (("[^"]*")|('[^']*')). |
Espaço ou tabulação |
:b |
Faz a correspondência de caracteres de espaço ou de tabulação. |
Inteiro |
:z |
Faz a correspondência da expressão ([0-9]+). |
A lista de todas as expressões regulares válidas em operações de Localizar e Substituir é mais longa do que pode ser exibido na Lista de Referências. Você também pode inserir quaisquer das seguintes expressões regulares em uma cadeia de caracteres Localizar:
Expressão |
Sintaxe |
Descrição |
---|---|---|
Mínimo — zero ou mais |
@ |
Faz a correspondência de zero ou mais ocorrências da expressão precedente, correspondendo o mínimo de caracteres possível. |
Mínimo - um ou mais |
# |
Faz a correspondência de uma ou mais ocorrências da expressão precedente, correspondendo o mínimo de caracteres possível. |
Repetir n vezes |
^n |
Faz a correspondência de n ocorrências da expressão precedente. Por exemplo, [0-9]^4 correspondem a qualquer sequência de 4 dígitos. |
Agrupamento |
() |
Agrupa uma subexpressão. |
Enésimo texto marcado |
\n |
Em uma expressão Localizar e Substituir, indica o texto correspondente da enésima expressão marcada, onde n é um número de 1 a 9. Em uma expressão Substituir, \0 insere o texto inteiro correspondente. |
Campo justificado à direita |
\(w,n) |
Em uma expressão Substituir, justifica a enésima expressão marcada à direita em um campo de pelo menos w caracteres de largura. |
Campo justificado à esquerda |
\(-w,n) |
Em uma expressão Substituir, justifica a enésima expressão marcada à esquerda em um campo de pelo menos w caracteres de largura. |
Evitar correspondência |
~(X) |
Evita a correspondência quando X é exibido em um certo ponto da expressão. Por exemplo, real~(ity) faz a correspondência de "real" em "realty" e "really", mas não "real" em "reality". |
Caractere alfanumérico |
:a |
Faz a correspondência da expressão ([a-zA-Z0-9]). |
Caractere alfabético |
:c |
Faz a correspondência da expressão ([a-zA-Z]). |
Dígito decimal |
:d |
Faz a correspondência da expressão ([0-9]). |
Dígito hexadecimal |
:h |
Faz a correspondência da expressão ([0-9a-fA-F]+). |
Número racional |
:n |
Faz a correspondência da expressão (([0-9]+.[0-9]*)|([0-9]*.[0-9]+)|([0-9]+)). |
Cadeia de caracteres alfabéticos |
:w |
Faz a correspondência da expressão ([a-zA-Z]+). |
Escape |
\e |
Unicode U+001B. |
Sino |
\g |
Unicode U+0007. |
Backspace |
\h |
Unicode U+0008. |
Tabulação |
\t |
Faz a correspondência de um caractere de tabulação, Unicode U+0009. |
Caractere unicode |
\x#### ou \u#### |
Corresponde um caractere dado por valor Unicode onde #### são dígitos hexadecimais. Você pode especificar um caractere fora do Plano Multilíngue Básico (isto é, um substituto) com o ponto de código ISO 10646 ou com dois pontos de código Unicode que dão os valores do par de substitutos. |
A tabela a seguir relaciona a sintaxe para correspondência por propriedades de caracteres Unicode padrão. A abreviação de duas letras é igual à relacionada no banco de dados de propriedades de caractere Unicode. Elas podem ser especificadas como parte de um conjunto de caracteres. Por exemplo, a expressão [:Nd:Nl:No] faz a correspondência de qualquer tipo de dígito.
Expressão |
Sintaxe |
Descrição |
---|---|---|
Letra maiúscula |
:Lu |
Faz a correspondência de qualquer letra maiúscula. Por exemplo, Luhe faz a correspondência de "The" mas não "the". |
Letra minúscula |
:Ll |
Faz a correspondência de qualquer letra minúscula. Por exemplo, Llhe faz a correspondência de "the" mas não "The". |
Tipo de letra de título |
:Lt |
Faz a correspondência de caracteres que combinam uma letra maiúscula com uma letra minúscula, como Nj e Dz. |
Letra de modificador |
:Lm |
Faz a correspondência de letras ou pontuação, como vírgulas, acento cruzado e aspas duplas, usados para indicar modificações na letra precedente. |
Outra letra |
:Lo |
Faz a correspondência de outras letras, como a letra gótica ahsa. |
Dígito decimal |
:Nd |
Faz a correspondência de dígitos decimais como 0-9 e seus equivalentes de largura total. |
Dígito de letra |
:Nl |
Faz a correspondência de dígitos de letra como numerais romanos e o número zero ideográfico. |
Outro dígito |
:No |
Faz a correspondência de outros dígitos, como o antigo número um itálico. |
Pontuação de abertura |
:Ps |
Faz a correspondência de pontuação aberta, como parênteses e colchetes de abertura. |
Pontuação de fechamento |
:Pe |
Faz a correspondência de pontuação fechada, como parênteses e colchetes de fechamento. |
Pontuação de aspas iniciais |
:Pi |
Faz a correspondência de aspas duplas iniciais. |
Pontuação de aspas finais |
:Pf |
Faz a correspondência de aspas simples e aspas duplas finais. |
Pontuação de traço |
:Pd |
Faz a correspondência de traço. |
Pontuação de conector |
:Pc |
Faz a correspondência de marca de sublinhado. |
Outra pontuação |
:Po |
Faz a correspondência de (,), ?, ", !, @, #, %, &, *, \, (:), (;), ', e /. |
Separador de espaço |
:Zs |
Faz a correspondência de espaços em branco. |
Separador de linha |
:Zl |
Faz a correspondência do caractere Unicode U+2028. |
Separador de parágrafo |
:Zp |
Faz a correspondência do caractere Unicode U+2029. |
Marca sem-espaçamento |
:Mn |
Faz a correspondência de marcas sem-espaçamento. |
Marca de combinação |
:Mc |
Faz a correspondência de marcas de combinação. |
Marca de circunscrição |
:Me |
Faz a correspondência de marcas de circunscrição. |
Símbolo matemático |
:Sm |
Faz a correspondência de +, =, ~, |, <, e >. |
Símbolo de moeda |
:Sc |
Faz a correspondência de $ e outros símbolos de moeda. |
Símbolo de modificador |
:Sk |
Faz a correspondência de símbolos de modificador como acento circunflexo, acento grave e acento circunflexo invertido. |
Outro símbolo |
:So |
Faz a correspondência de outros símbolos, como o sinal de protegido por direitos autorais, o sinal de parágrafo e o sinal de grau. |
Outro controle |
:Cc |
Faz a correspondência de término de linha. |
Outro formato |
:Cf |
Caractere de controle de formatação como os caracteres de controle bidirecionais. |
Substituto |
:Cs |
Faz a correspondência de uma metade de um par de substituto. |
Outros de uso particular |
:Co |
Faz a correspondência de qualquer caractere da área de uso particular. |
Outro não atribuído |
:Cn |
Faz a correspondência de caracteres que não mapeiam um caractere Unicode. |
Além das propriedades de caracteres 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 |
Faz a correspondência de qualquer caractere. Por exemplo, :Alhe faz a correspondência de palavras como "The", "then" e "reached". |
Numérico |
:Nu |
Faz a correspondência de qualquer número ou dígito. |
Pontuação |
:Pu |
Faz a correspondência de qualquer marca de pontuação, como?, @, ' etc. |
Espaço em branco |
:Wh |
Faz a correspondência de todos os tipos de espaço em branco, inclusive espaços de publicação e ideográficos. |
Bidi |
:Bi |
Faz a correspondência de caracteres de scripts da direita para esquerda, como árabe e hebreu. |
Hangul |
:Ha |
Faz a correspondência de Hangul coreano e Jamos combinável. |
Hiragana |
:Hi |
Faz a correspondência de caracteres de hiragana. |
Katakana |
:Ka |
Faz a correspondência de caracteres de katakana. |
Han/Kanji/Ideográfico |
:Id |
Faz a correspondência de caracteres ideográficos, como Han e Kanji. |