Hola de nuevo: Ya tengo respuesta a mi pequeño dilema. Les pongo el código y espero que a alguien le sirva en un futuro.
match1 = re.compile(r"^(>)(.+)(\n)(UGAGGUAGUAGGUUGUAU)(\w+)", re.MULTILINE) for match in match1.finditer(myfile): sequence = match.group() print sequence El detalle estaba en que cuando uno quiere buscar en diferentes líneas, tiene que utilizar MULTILINE, jeje... Si alguien tiene alguna sugerencia, es bienvenida. Saludos! 2012/3/1 alito s <alit...@gmail.com> > Hola a tod@s: > Me gustaría preguntarles una cosa, quizás muy básica pero llevo un ratito > rompiendome la cabeza. Resulta que estoy buscando una secuencia en > particular en un formato denominado fasta. Mi problema viene cuando quiero > que me ponga el nombre de la secuencia y además lo que estoy buscando en la > secuencia. > Por ejemplo, el archivo fasta consta de un ">" dónde se encuentra el > nombre de la secuencia, seguido por un "\n" y posteriormente la secuencia > como tal. > > "Ejemplo de formato fasta" > >hsa58962351 | 4568 > CUGUACAGCCUCCUAGCUUUCC > > Hice el siguiente programa: > > inp = open(files, 'r') > myfile = inp.readlines() > for line in myfile: > match1 = re.search(r'(>)(.*)(\n)', line) > match2 = re.search(r'(UGAGGUAGUAGGUUGUAU)(\w+)', line) > > # Es aqui donde ya me hago pelotas, porque lo que quiero es que me imprima > en la pantalla tanto el nombre de la secuencia como la línea donde entontro > mi secuencia determinada (match2). > # Entonces pongo algo así: > if match2: > print match1.group() + "\n" > print match2.group() + "\n" > > # Evidentemente aqui tengo un error garrafal porque match2 no lo > encuentra, simplemente porque no se encuentra en la misma línea dónde busco > match1. Entonces decidi hacer lo siguiente: > > for line in myfile: > match1 = re.search(r'(>)(.*)(\n)(UGAGGUAGUAGGUUGUAU)(\w+)', line) > > Pero tampoco me funciona. Así que después de contarles mi trágica historia > quería ver si alguien de ustedes sabe como buscar en varias líneas o como > imprimir mis busquedas (el caso en donde busco match1 y match2) en la > pantalla. > Gracias. >
_______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/