¿Podría valerte este? ^A+B*$|^A*B+$
Tendrías que comprobar en un test aparte que la longitud del string es N 2012/8/22 Jesús Curbelo Rodríguez <jescurb...@gmail.com> > Hola a todos, > > Me ha surgido una duda intentando crear una expresión regular. > > Supongamos que tenemos una lista de cadenas que cumplen las siguientes > condiciones > > - La longitud de las cadenas es constante, digamos que de longitud N. > - Las cadenas están formadas sólo por los caracteres A y B. > - Los caracteres A siempre están alineados a la izquierda. > - Los caracteres B siempre están alineados a la derecha. > - Los caracteres A pueden aparecer J veces, siendo 0<=J<=N. > - Los caracteres B pueden aparecer K veces, siendo 0<=K<=N. > - J y K son distintos para cada cadena pero siempre se cumple J + K = > N. > - Ejemplos, para N=5: AAAAA, AAAAB, AAABB, AABBB, ABBBB, BBBBB (para > N=5 no hay más posibilidades). > > > Cuando N es pequeño podemos poner todas las opciones como alternativas, > por ejemplo, para N=2 podemos usar la expresión A{2}|AB|BA|B{2} . Pero para > valores mayores de N esta forma de proceder es inviable. > > ¿Alguien conoce una expresión regular que se pueda usar para cualquier > valor de N? > > Gracias de antemano. > > Saludos. > > Jesús Curbelo. > > _______________________________________________ > Python-es mailing list > Python-es@python.org > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > > -- Juan Ignacio Rodríguez de León Móvil: 605 890514 E-Mail: euriba...@gmail.com http://www.metriz.com/ http://descon2.com/ http://www.elornitorrincoenmascarado.com/
_______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/