[Cascavel-pm] módulos existentes Was: expressão regular dentro de um arquivo html

fernandolouis em terra.com.br fernandolouis em terra.com.br
Terça Agosto 19 04:33:43 PDT 2008


ok Luis,

as vezes, sem necessidade, reinvento a roda. A verdade é que desconheço 
tantos módulos existentes.
Existe alguma tabela onde em uma coluna diz o módulo e na outra o que ele 
faz?

Fernando

----- Original Message ----- 
From: "Luis Motta Campos" <luismottacampos em yahoo.co.uk>
To: "Cascavel Perl Mongers" <cascavel-pm em pm.org>
Sent: Tuesday, August 19, 2008 8:21 AM
Subject: Re: [Cascavel-pm] expressão regular dentro de um arquivo html


fernandolouis em terra.com.br wrote:
> Pessoal, estou tendo um problema com expressões regulares.
>
> É o seguinte:
>
> está imprimindo assim: http://www.kussvanderlinde.adv.br/1.htm
>
> e quero que imprima assim: http://www.kussvanderlinde.adv.br/2.htm
>
> onde a $var recebe o seguinte:
>
> $var = "<a href=link8>8</a><a href=link8>8</a><a href=link8>8</a><a
> href=li<a href=link2>n</a>k1>1</a><a href=link8>8</a><a
> href=link8>8</a><a href=link8>8</a>";
>
> para uma melhor leitura, $var recebe:
>
> $var = "
> <a href=link8>8</a>
> <a href=link8>8</a>
> <a href=link8>8</a>
> <a href=li<a href=link2>n</a>k1>1</a>
> <a href=link8>8</a>
> <a href=link8>8</a>
> <a href=link8>8</a>
> ";
>
> então antes de imprimir, quero trocar o "<a href=link2>n</a>" pelo
> conteúdo que está sendo linkado ali, no caso, "n".
>
> para que $var fique assim:
>
> $var = "
> <a href=link8>8</a>
> <a href=link8>8</a>
> <a href=link8>8</a>
> <a href=link1>1</a>
> <a href=link8>8</a>
> <a href=link8>8</a>
> <a href=link8>8</a>
> ";
>
> tentei usar a seguinte regexp:
> $var =~ s/(<a\w*=*\w*)<a\w*=*\w*>(\w+)<\/a>/$1$2/g;
>
> mas não estou conseguindo com isso. Alguém pode me ajudar?
>
> lembrando que no exemplo, os endereços e os textos dos links podem ser
> qualquer palavra ou número, ou seja \w+
>
> Fernando
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>

OK, lição de Perl-Ioga número dois do ano... todo mundo cantando o
mantra de sempre:

  Nunca use regular expressions para tratar XML.
  Nunca use regular expressions para tratar XML.
  Nunca use regular expressions para tratar XML.
  Nunca use regular expressions para tratar XML.
  Nunca use regular expressions para tratar XML.
  Nunca use regular expressions para tratar XML.
  Nunca use regular expressions para tratar XML.
  Nunca use regular expressions para tratar XML.
  Nunca use regular expressions para tratar XML.
  Nunca use regular expressions para tratar XML.
  Nunca use regular expressions para tratar XML.

  Fernando, tem módulos para ler, interpretar e re-escrever HTML de
sobra no CPAN.

  Tem também mais de 10 módulos que tratam XML e podem ser usados para
tratar XML. O mirod (Michel Rodrigues, o francês que mantém o XML::Twig)
ganhou um pint de Tuborg (a cerveja local na Dinamarca) de mim, a semana
passada, por saber todos eles de cabeça.

  Pelamordedeus para de fazer coisas fáceis da maneira mais complicada -
ainda vão culpar o Perl por causa da sua falta de cuidado para
codificar. ;-) (*)

Putamplexos.
-- 
Luis Motta Campos is a software engineer,
Perl Programmer, foodie and photographer.



(*) é uma piada, mas não deixa de ser uma alfinetada.
_______________________________________________
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