An Interest In:
Web News this Week
- March 5, 2024
- March 4, 2024
- March 3, 2024
- March 2, 2024
- March 1, 2024
- February 29, 2024
- February 28, 2024
Expresses Regulares III - ncoras, limites de palavras e caracteres de palavras
ncoras
"ncora" o nome que damos para os caracteres ^
e $
. ^
significa o incio da linha e $
significa o fim da linha.
Ento se eu tiver a seguinte regex
^[Tt]este
e aplic-la ao seguinte texto
Teste unitrio um tipo de teste que visa testarapenas uma unidade de cdigo, como um fluxo determinado deuma funo.
A regex vai dar match apenas no primeiro Teste
porque ele est no incio da linha, representado pelo ^
. A mesma coisa acontece com $
.
A regexnunca$
aplicada no texto
Lembre-se, nunca diga nunca
vai dar match somente no segundo nunca
.
Limites de palavras
Limites de palavras
o nome que damos ao caracter especial \b
. Ele serve para darmos match no incio ou no final de uma palavra.
A regex\bvel
aplicado sobre o textoO vel da noiva invisvel
vai dar match apenas na palavra vel
, porque \b
d o match no limite da palavra.
Em contrapartida, o caracter \B
vai dar match em posies que \b
no d match.
\Bvel
aplicado sobre o textoO vel da noiva invisvel
d match no vel
de invisvel
.
Mas como a engine sabe que a palavra acabou? Como ela decide o final da palavra anti-heri
? \b
d match no que \w
no d. \w
chamado de word character
. Ele d match em "caracteres de palavras", ento as letras do alfabeto, algarismos e underline (_
). Algumas implementaes, ou flavors, de regex suportam Unicode por padro, como a engine do Python. Nas que no suportam, o de
heri
no ser reconhecido como \w
se no for colocada uma flag, que na maioria dos flavors u
. Falaremos sobre flags mais pra frente.
No entanto, nenhuma engine de regex d match no hfen (-
). Ento se voc quiser que a sua engine d match em anti-heri
, voc precisar da seguinte regex
/[\w-]+/u
Assim voc engloba tanto todos os caracteres representados por \w
e o hfen.
Notem que eu coloquei duas barras (/
), uma no comeo e uma no final da regex. Esses so os separadores e indicam quando a regex comea e termina. Esses separadores no foram includos antes porque no eram necessrios para a explicao, mas por conta da flag u
, foi preciso inclu-los. Novamente, falaremos sobre flags mais pra frente.
Concluso
Nessa parte foi a primeira vez que eu falei de flavors de regex. importante falar sobre isso porque o que a gente chama de regex na verdade uma especificao. Cada linguagem ou plataforma implementa de uma maneira diferente essa especificao, ento agora a primeira vez que digo uma das regras da regex, que eu mesmo formulei.
Regra 3: conhea muito bem sua engine de regex
At a prxima.
Original Link: https://dev.to/feministech/expressoes-regulares-iii-ancoras-limites-de-palavras-e-caracteres-de-palavras-3epf
Dev To
An online community for sharing and discovering great ideas, having debates, and making friendsMore About this Source Visit Dev To