Your Web News in One Place

Help Webnuz

Referal links:

Sign up for GreenGeeks web hosting
September 12, 2022 02:00 pm GMT

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 regex
nunca$
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 texto
O 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 texto
O 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

Share this article:    Share on Facebook
View Full Article

Dev To

An online community for sharing and discovering great ideas, having debates, and making friends

More About this Source Visit Dev To