[Cascavel-pm] Reconhecer com e sem acento
Nelson Ferraz
nferraz em gmail.com
Segunda Julho 23 03:49:04 PDT 2007
On Jul 18, 2007, at 9:20 PM, <fernandolouis em terra.com.br>
<fernandolouis em terra.com.br> wrote:
> 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.
>
> }
O jeito é "desacentuar" a string, e depois fazer o match:
use Text::Unaccent;
my $string = "Manual de referência rápida";
my $unaccented = unac_string('utf8', $string);
warn "Testing '$unaccented'\n";
if ( $string =~ /referencia/ ) {
# ...
}
(Se a codificação não for 'utf8', tente 'latin1' -- talvez você tenha
que preparar o seu programa para as duas hipóteses)
[]s
Nelson
Mais detalhes sobre a lista de discussão Cascavel-pm