Expressões regulares no Objective C
Posted by Marcelo Baltar | Posted in biblioteca, cocoa | Posted on 19-08-2009
Tags:biblioteca, cocoa, expressões regulares, regex, regular expressions
0
Expressões regulares são uma ferramenta essencial para todo desenvolvedor. Se sua aplicação precisa fazer validações, parsing ou qualquer manipulação com strings, com certeza você pode se beneficiar muito utilizando-a.
O problema é que (ainda, espero!) não existe nenhuma classe/biblioteca no Cocoa que nos permita utilizar expressões regulares em toda sua plenitude. A classe NSPredicate faz alguma coisa, mas é ainda limitada. O jeito então é utilizarmos bibliotecas de terceiros.
Uma boa biblioteca para aplicações para o iPhone é a RegexKitLite. Ela possui um footprint baixo (16KB a 20KB), o que a torna ótima para um dispositivo móvel com restrições de recursos. Um problema com esta implementação é que ela linka com uma biblioteca que a Apple ainda não liberou uma interface pública oficial (libicucore.dylib), como apontado em sua própria documentação. Existe uma chance que isto venha a acontecer no futuro, como mostra esta mensagem na lista de mensagens da Apple para o Xcode. Outra vantagem desde projeto é que ele possui uma excelente documentação, que pode inclusive ser incluída no Help do Xcode.
Existem outras alternativas:
- AGRegEx – Faz parte do AGKit, uma biblioteca para Cocoa com outras funcionalidades (sockets, processos)
- ObjPCRE
- MOKit
- OFRegularExpression
Veja também o excelente artigo “8 Regular Expressions You Should Know” para alguns usos muito úteis de expressões regulares.

