[Cascavel-pm] Como lidar com caracteres nacionais

Nelson Ferraz nferraz em gnubis.com.br
Segunda Abril 18 06:33:39 PDT 2005


>    Bom, se você propuser os outros pré-requisitos, ou algum código, pode 
> ajudar...

O núcleo do programa é este loop, que retorna uma resposta aleatórea para a mensagem do usuário:

1  my @resp;
2  foreach (@{$bot->{user}}) {
3    my $bot_msg = $_->{msg};
4    if ($user_msg =~ m!$bot_msg!i) {
5      @resp = @{$_->{bot}};
6      my $resposta = eval("\"$resp[rand @resp]->{msg}\"");
7      return $resposta;
8    }
9  }

Na linha 4 verificamos se a mensagem do usuário bate com uma das palavras-chave registradas, e, em caso positivo, recuperamos as possíveis respostas (@resp, na linha 5). A linha 6 usa um eval para que as variáveis $1, $2, etc, sejam corretamente interpoladas.

O código-fonte completo está aqui:

http://www.hola.com.br/chat.tgz

Ainda não consegui resolver o problema da acentuação...

[]s

Nelson


Mais detalhes sobre a lista de discussão Cascavel-pm