On Wed, 03 Apr 2002 15:58:22 -0300 irado furioso com tudo <irado@subdimension.com> wrote: > talvez não seja o forum próprio, mas francamente *não* sei nadinha de > programação e preciso de um scriptzinho pra extração de strings. A situação: > > dado um arquivo com linhas de comprimentos variáveis, e com sub-string > com posicionamento aleatório: > > aaaaaaaaaaaaaaa[string]bbbbbbbbbbbbbbbbbbbbbb > aaa[string]bbbbbbbbbbbb > aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[string]bbbbbbbbbbbbbbbbbb > [..continua..] > > como fazer para coletar a [string] e coloca-la em outro arquivo? o > delimitador existe, e é o próprio par de colchetes '[]'. > > P.S:Tentei o cut -d[, mas apanhei tanto que perdi até o rumo. Serve em Perl? Fiz um pequeno script em perl, que via regex parseia o texto da forma que voce quer! Observe que eu vou jogando, via push, a string contida entre colchetes em um array, chamado @strings. Nao sei para que voce quer isso, por isso eu printei cada item do array em uma linha. stratus@secure:~/tmp$ cat heh.txt aaaaaaaaaaaaaaa[gustavo]bbbbbbbbbbbbbbbbbbbbbb aaa[ramos]bbbbbbbbbbbb aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa[franco]bbbbbbbbbbbbbbbbbb stratus@secure:~/tmp$ cat heh.pl #!/usr/bin/perl -w open(HEH,"heh.txt") or die "Can't open file: $!"; while(<HEH>) { $_ =~ /.*\[(.+)\].*/; push(@strings,$1); } foreach $string (@strings) { print "$string\n"; } stratus@secure:~/tmp$ perl heh.pl gustavo ramos franco Espero ter ajudado, -- _ _ __|_ _. _ _|_.__.._ _ _ (_||_|_> |_(_|\/(_) | |(_|| |(_(_) stratus@ax.net.br _|nupg id: 0x37155778 gustavo@dsgx.org Alternex S/A - www.alternex.com.br -- Rio de Janeiro/Brazil gnupg id: 0x37155778 (fetch from keyserver: wwwkeys.eu.pgp.net) Key fingerprint = 1908 52B9 4A16 6EC2 74D1 C03B EDFB 7005 3715 5778
Attachment:
pgpZNwIXT8itY.pgp
Description: PGP signature