[Cascavel-pm] :b ou :basechar no Perl 6 (Was: Reconhecer com e sem acento)
fernandolouis em terra.com.br
fernandolouis em terra.com.br
Quinta Julho 19 04:22:13 PDT 2007
perl6++;
Usar na regexp [eê] ou (e|ê) é fácil neh monges...
e usar o "tr//" pra trocar as letras e depois "lc()"... também é fácil neh
monges...
o que eu queria saber é se existia esse match modifier "b"...
Valeu Daniel!
[]ão,
Fernando
----- Original Message -----
From: "Daniel Ruoso" <daniel em ruoso.com>
To: "Cascavel Perl Mongers" <cascavel-pm em pm.org>
Sent: Thursday, July 19, 2007 7:41 AM
Subject: [Cascavel-pm] :b ou :basechar no Perl 6 (Was: Reconhecer com e sem
acento)
Qua, 2007-07-18 às 17:20 -0300, fernandolouis em terra.com.br escreveu:
> Talvez seja bem simples... antes de me falarem RTFM, digo-lhes que já
> li... e tentei usar /gi, mas não deu
> O que eu quero é reconhecer uma palavra dentro de uma string, com ou
> sem acentuação.
> Por exemplo:
> $palavra = "Manual de referência rápida";
> if ($palavra =~ /referencia/) { # entrar se achar "referencia" dentro
> de $palavra... mesmo sem acento.
> }
É interessante você tocar nesse assunto porque tive uma situação
parecida a um tempo atrás, só que um pouco mais complexa...
O problema era:
Dada a palvavra "referência" ou "referencia" envolver com a tag bold no
texto todas as referências também com ou sem acento. É mais complexo
porque o meu match era variável e porque eu precisava fazer
substituições.
É interessante a sua linha de raciocínio em tentar utilizar
modificadores da regexp para fazer isso, porque na verdade, se a regexp
suporta fazer match "case-insensitive" faz todo sentido que ela pudesse
fazer matches "unicode-properties-insensitive".
Sim "e", "é" e "ê" são a mesma letra em unicode, apenas possuem
propriedades diferentes. A notícia ruim é que as regular expressions do
Perl 5 (ainda?) não implementa isso. A notícia boa é que quando eu tive
esse mesmo problema, fui ao #perl6 trocar uma idéia com o pessoal e
então o Perl 6 vai ter um match modifier para isso, o "b" ou "basechar".
http://dev.perl.org/perl6/doc/design/syn/S05.html#___top
/me loves Perl 6 open development community
Daniel
_______________________________________________
Cascavel-pm mailing list
Cascavel-pm em pm.org
http://mail.pm.org/mailman/listinfo/cascavel-pm
Mais detalhes sobre a lista de discussão Cascavel-pm