No trabalho e na vida cotidiana, estamos literalmente cercados por textos: livros e artigos, cartas e chats, páginas da web e códigos de programas. Ora, a própria vida biológica é baseada no DNA. E para um trabalho eficaz de pesquisa ou modificação de texto, uma ferramenta poderosa foi inventada há muito tempo - expressões regulares ou regex. No entanto, por uma série de razões, nem todos os usam ou lidam com eles apenas quando forçados, quando absolutamente necessário. Neste artigo, tentarei remediar essa triste situação.
Para encontrar funções, reuni-las e forjá-las com uma única vontade negra.
Já existe uma série de bons artigos sobre Habré que o ajudarão a entender o básico:
, , .
, . , :
^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$&^()*])[a-zA-Z--0-9!@#$&^()*]{1,}$
. , . : « , ?».
, regex.
. Notepad++ (, – ).
, Ctrl+f, «Regular expression» !
Notepad++.
1.
(, ) « »
! «».
– . ( «Math Case»), . «», «», «» . , . , . , .
O primeiro passo foi dado e nada nos impede de seguir em frente.
2. Caracteres curinga
Outra oportunidade comum - é um curinga (curinga) um asterisco " * ". Ele substitui qualquer número de quaisquer caracteres válidos. O exemplo mais comum é a pesquisa de arquivos.
Digamos que queremos encontrar fotos de um feriado à beira-mar. Para fazer isso, digite " * .png " na barra de pesquisa e obtenha uma lista de todas as fotos da pasta:
.png .png --, .png .png , -.png
Já está bom. O que acontece se adicionarmos a palavra "mar" antes ou depois do asterisco?
sea * .png
.png
* sea.png
--, .png
A próxima opção retornará o que você precisa:
* sea * .png
.png --, .png , -.png
«**.png» — , – - ( «.png» - «»), .
, , , . — «.*».
3. «.*»
– « , 0 ». « ». « ».
, , , , . , : «.*» «.*»»:
215 . …
, . «|»: :
(.*|.*)
, — 213. , , , « , .» .
, , :
(|)
. , . , , . , .
, , regex-.
Saruman entende o poder em suas mãos e não tem medo dele. Portanto, ele está sempre ciente de todos os assuntos.
4. Número de repetições ou quantificadores
Já encontramos um quantificador - o asterisco. Existem várias outras maneiras de definir o valor:
| {4} | quantia exata |
| {1,5} | alcance |
| {2,} | do número ao infinito |
| {, 7} | de 0 a número |
Alguns intervalos comumente usados têm seus próprios símbolos:
| * ou {0,} | qualquer quantidade |
| ? ou {0,1} | zero ou um |
| + ou {1,} | há pelo menos um |
Vamos perguntar com que frequência a mesma palavra é mencionada em um parágrafo:
2 — «(.*){2}» — 7 , — «(.*){3,}» — . «» 3 , «» «» «».
5.
( ) — . «\d», «\w», «[abc], «[1-9], «[.,?:;]».
, , :
«\d+» «\d{1,}» – :
. (37.), (. .) , 4 — \d{4}
1070 , 1421 — 351 .
.
: , , – , — . : . . «Replace»:
Agora você pode ler um livro com uma tradução familiar. Mas tenha cuidado: o padrão de pesquisa pode corresponder não apenas à palavra desejada, mas também a um mais longo que contenha a palavra desejada. Então, ao substituir "dacha" por "aldeia", podemos obter inesperadamente "aldeia" ou "televillage". É aconselhável fazer primeiro uma pesquisa usando o mesmo modelo e verificar os resultados. Complique o template para uma busca mais precisa. No caso de "dacha", podemos adicionar um espaço antes da palavra e um espaço ou sinais de pontuação no final: " dacha [.,!?;:] ".
Prática de uso
Para criar, editar ou explorar expressões regulares, recomendo usar um editor online de sua preferência. Para mim, o mais conveniente era REGEX101 :
O anel encontra todas as definições de função na ISO C99 e, portanto, é muito poderoso.
Na parte superior, inserimos uma expressão regular e, na parte inferior, o texto que procuramos. O editor destaca automaticamente as correspondências encontradas, quando você passa o mouse sobre uma parte da expressão, dicas explicando o significado aparecem e muitas outras funções úteis. Para substituir, selecione "Substituição" no painel esquerdo.
Conclusão
- Use a pesquisa com mais frequência para sua conveniência e agilize seu trabalho.
- Use um asterisco ao pesquisar arquivos criando modelos simples.
- Comece a usar expressões regulares simples em seu trabalho diário à medida que ganha experiência e gradualmente explora novos recursos.
Claro, este artigo apenas toca o topo. Muitos recursos úteis e possíveis problemas foram deixados sem supervisão. Mas se você deseja mergulhar no mundo da regex mais profundamente, além de livros de referência e tutoriais na Internet, você pode ler os seguintes artigos sobre Habré:
- Quantificadores em expressões regulares
- 8 expressões regulares úteis com análise visual
- Alguns erros ao escrever regexps
Hoje não consigo mais imaginar meu trabalho sem expressões regulares, bem como sem o método de impressão cega. Tudo que você precisava fazer era começar a usá-lo. Que é o que desejo para você.