[Cascavel-pm] expressao regular
Luis Motta Campos
luismottacampos em yahoo.co.uk
Terça Janeiro 22 15:18:30 PST 2008
Patty Silva wrote:
> Luis
> fazendo com expressao regular tb da certo.. so que nao estou conseguindo
> recuperar o que nao casa com a expressao :)
> pode dar uma ajuda?
>
> 1-> eu leio o arquivo byte a byte e insiro em uma variavel...
> my $acum;
> while( my $arq = <*.teste> )
> {
> open(FH, "<$arq") or die("Unable to open file");
> while((my $byte = getc(FH)) ne "")
> {
> $acum=$acum.$byte;
> }
> }
Argh!!! O trecho do while(), acima, é feio. Alguém pode por favor
escrever um bom leitor de arquivos inteiros para a Patty?
eu uso:
my $data;
while( my $filename = glob( q{*.teste} ) ){
open my $file, $filename
and do { local $/ = undef; $data .= <$file>; }
and close $file
or die $!;
}
> my @dados = ($acum =~ /(9\s?1\s?7\s?0\s?0\s?.*?\s?as?s\s?d\s?f)/gis);
> -> aqui eu recupero os valores entre o 91700 e asdf e coloco no array
> porem eu quero recuperar os que nao " casa" com a expressao
> como posso fazer isso?
:) eu estava pensando no mesmo problema, agora há pouco...
Você está indo bem, precisa apenas de um empurrãozinho. Leia o meu
código (acabei de postar), e depois leia
http://perldoc.perl.org/perlre.html#'(?{-code-})'
(sim, eu sei, o finalzinho desta URL é estranho, mas é a funcionalidade
que você está procurando... )
Putamplexos!
--
Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer,
Perl fanatic evangelist, and amateur {cook, photographer}
Mais detalhes sobre a lista de discussão Cascavel-pm