[Rio-pm] find and replace

André Torres andretorresrj em gmail.com
Sábado Fevereiro 25 17:43:51 PST 2012


acho que a ideia da hash vai ajudar.

aureliano, o padrao de substituição é mais ou menos esse ai.

eu tenho mais de mil sequencias FASTA com nomes de varias bases de dados
diferentes. eu ja tenho uma lista com os nomes originais e com o nome novo
padronizado, eu queria fazer a substituição trocando o nome antigo pelo
novo padronizado.
como o primeiro arquivo é uma lista, eu acho que teria que armazenar dentro
de um array, agora o que eu nao consigo fazer é ele encontrar o nome antigo
e trocar exatamente pelo novo no arquivo multisequencia.

vou tentar mexer no codigo.
brigado pela ajuda galera.



Em 25 de fevereiro de 2012 22:39, breno <breno em rio.pm.org> escreveu:

> On Sat, Feb 25, 2012 at 8:40 PM, André Torres <andretorresrj em gmail.com>
> wrote:
> > pessoal, queria pedir uma ajuda de vcs.
> >
> > eu to tentando fazer um script pra modificar um txt em larga escala
> usando
> > uma lista de substituição.
> > vou trabalhar com os seguintes arquivos.
> >
> > primeiro: arquivo que vai ser modificado
> >>sequencia1
> > acagacagatttagatt
> >>sequencia2
> > acgggtagtagtaccgagatgagatggggat
> > ...
> >
> > segundo: lista de substituição
> > sequencia1    gene1
> > sequencia2    gene2
> > ...
> >
> > eu queria saber se existe uma maneira de guardar a informação da
> linha[1] e
> > da linha[2] por exemplo possam fazer parte  s/$linha[1]/$linha[2]/g em
> > cadeia ate terminar a lista.
> >
>
> Uma sugestão:
>
> leia a lista de substituição pra dentro de um hash na forma:
>
> %substituicao = (
>   sequencia1 => 'gene1',
>   sequencia2 => 'gene2',
>   ...
> );
>
> depois, ao ler o arquivo a ser modificado linha-a-linha, sempre que a
> linha casar com uma chave do seu hash (e.g. if ( exists
> $substituicao{$linha} )) vc lê a linha seguinte e substitui o que vc
> quiser pelo conteúdo de $substituicao{$linha}.
>
> []s
>
> -b
> _______________________________________________
> Rio-pm mailing list
> Rio-pm em pm.org
> http://mail.pm.org/mailman/listinfo/rio-pm
>



-- 
André Torres

"Quando o homem aprender a respeitar até o menor ser da criação, seja
animal ou vegetal, ninguém precisará ensiná-lo a amar seu semelhante."
(Albert Schweitzer - Nobel da Paz de 1952)
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/rio-pm/attachments/20120225/74f88477/attachment-0001.html>


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