Se o senhor acompanha meu blog há algum tempo, sabe que sou totalmente fã de expressões regulares. É quase embaraçoso o quanto eu amo essas coisas. Tenho certeza de que meus colegas de equipe arregalam os olhos toda vez que veem outra classe que eu toquei e que tem using System.Text.RegularExpressions
no topo. O senhor também poderia renomeá-la para JeffHasBeenHere
.
Digo isso porque acabo escrevendo muito código de manipulação de strings, mesmo quando as pessoas me dizem que não devo fazer isso. Agora, eu só defendo o o uso responsável e criterioso de expressões regulares quando o senhor estiver lidando com cadeias de caracteres. Nas mãos erradas, as expressões regulares podem ser perigosas. O senhor pode acabar se perguntando se o Q*Bert acabou de vomitar em todo o seu código-fonte. Ou o senhor pode estar programando em Perl. Existe alguma diferença? (rimshot instantâneo)
Mas estou divagando. Embora adore regex, nunca fui fã do livro clássico de referência sobre expressões regulares, o Friedl’s Mastering Regular Expressions (Dominando expressões regulares). Achei o livro seco, um pouco acadêmico e sem exemplos práticos do mundo real. Ele simplesmente não me tocou como programador profissional da mesma forma que as expressões regulares, e isso foi decepcionante.
É por isso que fiquei tão empolgado ao descobrir que dois dos maiores gurus de regex que eu conhecia – o Jan Goyvaerts (autor de RegexBuddy e regular-expressions.info) e Steven Levithan (autor de XRegExp e RegexPal) – estavam se reunindo para criar o uma referência de expressão regular para o resto de nós. I imediatamente fiz uma pré-encomenda sem ver.
Esse livro é Livro de receitas de expressões regulares. Ele chegou há alguns dias e, embora minhas expectativas fossem altas, acho que esse livro superou até mesmo as expectativas mais altas que eu tinha. Ele é excelente.
O que eu adoro nesse livro é que doistrês coisas:
- Ele está cheio de exemplos práticos e reais de uso do RegEx. Em cada etapa do caminho, do nível iniciante ao avançado, o senhor está criando expressões regulares que são realmente úteis na natureza, e não apenas exercícios acadêmicos abstratos e obtusos para resolver quebra-cabeças de correspondência de strings.
- Ele abrange todos os problemas comuns com as quais o senhor inevitavelmente se depara quando começa a criar expressões regulares não triviais. Coisas como as diferenças, às vezes enormes (e dolorosas), entre as bibliotecas de regex em várias linguagens, peculiaridades sutis de sabor de regex, retrocesso catastrófico, suporte a unicode e assim por diante. Tudo isso é apresentado no contexto das soluções, exatamente como o senhor as encontraria na programação real. Eu sei disso porque tenho as cicatrizes para provar.
- Foi o atualizado e revisado na segunda edição para refletir as diferenças de sabor atuais com novas receitas, além de um capítulo totalmente novo sobre código-fonte e arquivos de registro. Ele também abrange XRegExp, uma biblioteca regex padrão emergente e com todos os recursos para JavaScript.
Livro de receitas de expressões regulares consegue ser simultaneamente acessível e quase ridiculamente abrangente. Eu me considero um usuário de regex bastante avançado e, com cerca de 50 páginas, já tive três grandes momentos de “uau, eu não sabia disso”. Na minha opinião, pelo menos, esse livro substitui completamente o livro de Friedl como a referência para programadores de qualquer nível de habilidade ou experiência que buscam esclarecimento sobre expressões regulares.
Nem é preciso dizer, recomendado.