Última versão : 5.6.1

 

Brasilian Portuguese translation is made by
Ricardo Crudo

Ajuda - Expressão Regular Notepad++

 

Autor : Georg Dembowski

Notepad++ Lista de Expressões

Nota: No caso de você ter os plugins instalados, digite CTRL + R ou no Menu TextFX -> TextFX Quick -> Find/Replace para mostrar o diálogo sofisticado, incluindo um drop down para expressões regulares e busca\substituição com multíplas linhas.


Numa expressão regular, os caracteres especiais interpretados são:

. Compatível com qualquer caractere
( Ele marca o início da região de rotulação; assim o que está dentro dos  ( ) você pode usar no "substituir com" usando \1, \2 etc.
) Ele marca o final da região de rotulação.
\n Onde n pode ser de 1 a 9, refere-se as regiões rotulações para a substituição. Por exemplo, se procurar uma string assim: Fred([1-9])XXX e substituir-la pela string Sam\1YYY , quando aplicado em Fred2XXX ele irá gerar Sam2YYY .
\< Ele inicia a palavra usando as definições de palavras do Scintilla.
\> Ele termina a palavra usando as definições de palavras do Scintilla.
\x Isto permite você utilizar um caractere x com um significado especial. Por exemplo, \[ será interpretado como [ e não como o início de configuração de caractere.
[...] Isto indica a configuração de caracteres, por exemplo, [abc] significa qualquer um dos caracteres a, b ou c. Você também pode usar por extensão, por exemplo [a-z] para qualquer caractere de caixa baixa.
[^...] O complemento da configuração de caracteres. Por exemplo, [^A-Za-z] significa quaisquer caracteres exceto os caracteres do alfabeto.
^ Isto indica o início de uma linha (exceto no caso de configuração, veja acima).
$ Ele indica o final de uma linha.
* Isto indica 0 ou mais períodos. Por exemplo, Sa*m significa Sm , Sam , Saam , Saaam e assim por diante.
+ Isto indica 1 ou mais períodos. Por exemplo, Sa+m significa Sam , Saam , Saaam e assim por diante.

A Fonte desta informação é à  ajuda do componente Scintilla, mas ele foi adaptado ao comportamento do Notepad++.


Notepad++ Exemplos de Expressões

Importante
  • Você deve marcar o item "regular expression" na busca & diálogo de substituição
  • Quando copiar strings de fora, preste bastante atenção para não ter espaços adicionais na frente da string! Senão a expressão não funcionará!
Você usa um MediaWiki (por exemplo Wikipedia, Wikitravel) e quer fazer todos os cabeçalhos ficar um "nível acima", assim um H2 se torna um H1, etc.
  1. Busca ^=(=)
    Substituindo com \1
    Clique "Substituir Todos" para encontrar todos cabeçalhos2...9 (dois sinais de igual são necessário) o qual começam com o começo de linha (^) e para substituir os sinais de igual por somente o último dos dois, assim eleiminará um e ficará com um.
  2. Busca =(=)$
    Substituindo com \1
    Clique "Substituir Todos" para encontrar todos cabeçalhos2...9 (dois sinais de igual são necessário) o qual começam com o começo de linha ($) e para substituir os sinais de igual por somente o último dos dois, assim eleiminará um e ficará com um.
  3. == título == se torna = title =, está feito :-)
Você tem um documento com muitas datas, o qual usa datas no formato alemão (dd.mm.aa) e você tem que transforma-lo em outro formato (aa-mm-dd). Não tenha medo dos tamanhos dos termos de pesquisa – ele é grande, mas consiste de bonitos, fáceis e pequenos pedaços.
  1. Procure ([^0-9])([0123][0-9])\.([01][0-9])\.([0-9][0-9])([^0-9])
    Substitua por \1\4-\3-\2\5
    Clique "Substituir Todos" para fazer que
    • o dia, tenha como primeiro número somente 0, 1, 2 ou 3
    • o mês, tenha como primeiro número somente 0 ou 1
    • somente se o separador for . e não qualquer caractere ( . versus \. )
    • substitua somente se número for a data, e não talvez um endereço de IP no lugar da data
    e para escrever todos eles em ordem oposta, exceto para as vizinhanças. Preste Atenção: qualquer BUSCA significa que serão apagados e substituidos somente pelo material do campo SUBSTITUIR, desta forma ele manda ter os vizinhos no campo SUBSTITUIR também!
  2. 31.12.97 se torna 97-12-31 e 14.08.05 se torna 05-08-14 e o endereço IP 14.13.14.14 não é mudado, está feito :-)
Você tem impresso numa janela uma lista de arquivos usando dir /b/s >lista.txt para o arquivo lista.txt e quer criar URLs Locais fora deles. 
  1. Abra lista.txt com o Notepad++
  2. Procure \\
    Substitua por /
    Clique "Substituir Todos" para mudar o caminho para a janela usando o \  no caminho da URL que é separado por / 
  3. Procure ^(.*)$
    Substitua na arquivo:///\1
    Clique "Substituir Todos" para adicionar no arquivo:/// no começo de todas as linhas
  4. Dependendo da sua necessidade, proceda para deixar alguns caracteres com %20 de espaço etc.
  5. C:\!\aktuell.csv se torna file:///C:/!/aktuell.csv, esta feito :-)


Outro Exemplo de Busca e Substituição

[Dados]
EU AX ALA 248 Åland Islands
EU AL ALB 008 Albania, People's Socialist Republic of
AF DZ DZA 012 Algeria, People's Democratic Republic of
OC AS ASM 016 American Samoa
EU AD AND 020 Andorra, Principality of
AF AO AGO 024 Angola, Republic of
NA AI AIA 660 Anguilla
AN AQ ATA 010 Antarctica (the territory South of 60 deg S)
NA AG ATG 028 Antigua and Barbuda
SA AR ARG 032 Argentina, Argentine Republic
AS AM ARM 051 Armenia
NA AW ABW 533 Aruba
OC AU AUS 036 Australia, Commonwealth of

[PadraoBusca]
([A-Z]+) ([A-Z]+) ([A-Z]+) ([0-9]+) (.*)

[PadraoSubstituicao]
\1,\2,\3,\4,\5

[DadosFinais]
AS,AF,AFG,004,Afghanistan
EU,AX,ALA,248,Åland Islands
EU,AL,ALB,008,Albania, People's Socialist Republic of
AF,DZ,DZA,012,Algeria, People's Democratic Republic of
OC,AS,ASM,016,American Samoa
EU,AD,AND,020,Andorra, Principality of
AF,AO,AGO,024,Angola, Republic of
NA,AI,AIA,660,Anguilla
AN,AQ,ATA,010,Antarctica (the territory South of 60 deg S)
NA,AG,ATG,028,Antigua and Barbuda
SA,AR,ARG,032,Argentina, Argentine Republic
AS,AM,ARM,051,Armenia
NA,AW,ABW,533,Aruba
OC,AU,AUS,036,Australia, Commonwealth of