[Golf] Re: [Cascavel-pm] Localizando "css" em arquivos HTML
Luis Campos de Carvalho
lechamps em terra.com.br
Segunda Setembro 15 12:08:35 CDT 2003
Nelson Ferraz wrote:
>> estou com uma dúvida, possuo vários arquivos em HTML e todos são
>> formatados apartir de um único arquivo CSS. Tenho encontrado
>> dificuldades para elaborar um script que localiza-se a seguinte
>> sentença: class="<identificação>". Depois de localizado seria
>> interessante que o script elabora-se uma listagem contendo o nome do
>> arquivo mais que sentenças ele possui.
>
>
> #!/usr/bin/perl
> while (<>) {
> print "$1\n" if /class="(.+?)"/i
> }
Belo script, Nelson.
Posso jogar um pouquinho de Perl Golf com ele?
Pode ser mais útil ainda assim:
perl -ne 'print "$1\n" if/class\s*=\s*"([^\"]+)"/i;'
******************************************************
Pergunta: a classe de caracteres expressa por qr/[\"]/ contém um
('"') ou dois ('"', '\') caracteres? E quantos caracteres tem a classe
de caracteres expressa por qr/[^\"]/ ?
******************************************************
De volta à vaca-fria, o programa vai ficar ainda mais rápido assim,
embora fique feio (IMHO):
perl -ne 'print "$1\n" if /[Cc][Ll][Aa][Ss][Ss]\s*=\s*"([^\"]+)"/;'
E pode ficar menos bagunçado se você usar o sort(1) para organizar as
coisas:
perl -ne 'print "$1\n" if/class="([^\"]+)"/i;' < filename.html | sort -u
(lembrem-se: tudo isto é uma única linha de comando!)
Parabéns pela solução *simples* para o problema, Nelson!
Boa sorte com o HTML, Flávio!
[]'z!
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Luis Campos de Carvalho is Computer Scientist,
PerlMonk [SiteDocClan], Cascavel-pm Moderator,
Unix Sys Admin && Certified Oracle DBA
http://br.geocities.com/monsieur_champs/
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Mais detalhes sobre a lista de discussão Cascavel-pm