‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Wednesday, May 20, 2020 6:10 PM, AGTUGO <agt...@gmail.com> wrote:
> No entendí el problema, podrías explicarmelo otra vez?
La verdad es que quizá no me he explicado bien :-P
Empiezo de nuevo.
El problema. Imaginad que tengo una cadena que es algo así:
opcion1 = """
esto es parte de
un texto que no me interesa lo más mínimo.
== {{codigo+id1}} ==
Esta sería la parte que me interesa
=== {{puede tener cosas así}} ===
pero ninguna línea de este texto empieza con doble signo de igual==
== {{codigo+id2}} ==
En la anterior línea debería de haber dejado de extraer mi patrón puesto
que empieza con doble línea y es lo que limita lo que busco
=== {{loquesea}} ===
esto sigue sin interesarme
== {{codigo+id3}} ==
esto tampoco me interesa
=== {{loquesea}} ===
y esto tampoco"""
Otra opción es que sea:
opcion2 = """
esto es parte de
un texto que no me interesa lo más mínimo.
== {{codigo+id1}} ==
Esta sería la parte que me interesa
=== {{puede tener cosas así}} ===
pero ninguna línea de este texto empieza con doble signo de igual==
== lo que sea ==
En la anterior línea debería de haber dejado de extraer mi patrón puesto
que empieza con doble línea y es lo que limita lo que busco
=== {{loquesea}} ===
esto sigue sin interesarme"""
Otra opción es que sea:
opcion3 = """
esto es parte de
un texto que no me interesa lo más mínimo.
== {{codigo+id1}} ==
Esta sería la parte que me interesa
=== {{puede tener cosas así}} ===
pero ninguna línea de este texto empieza con doble signo de igual=="""
Es decir, quiero extraer esto:
Esta sería la parte que me interesa
=== {{puede tener cosas así}} ===
pero ninguna línea de este texto empieza con doble signo de igual==
coger todo lo que haya entre "== {{codigo+id1}} ==" y una de las tres
posibilidades que son:
- "== {{codigo+idn}} ==" el siguiente código idn que no sea id1.
- "== otras cosas ==" (estas otras cosas siempre empiezan con signo '='
repetido dos veces, pero no más, al principio de línea).
- "fin de la cadena", es decir, que no encuentra ni lo primero ni lo segundo y
llega al final.
Lo anterior se puede reducir a dos posibilidades. Quiero extraer todo lo que
esté entre "== {{codigo+id1}} ==" y:
- La primera línea que empiece por "== " (inicio de línea y solo dos símbolos
de igual (no tres o más)).
o
- El final de la cadena.
No sé si ahora se entiende mejor.
Si además de darme un patrón me lo explicáis un poco os lo agradezco.
Gracias.
Saludos.
> On Wed, May 20, 2020, 9:06 AM kikocorreoso vía Python-es
> <python-es@python.org> wrote:
>
>> Buenas a todos.
>>
>> A ver si alguien me puede echar un cable porque llevo varios días dándome
>> cabezazos y no soy capaz de sacarlo y mi regex-fu no llega más allá y sé que
>> aquí hay auténticos maestros.
>>
>> El problema. Imaginad que tengo una cadena que es:
>> opcion1 = """
>> f safsj ofsa
>> sadjfoisajd
>> == {{codigo+id1}} ==
>> jfpoj
>> === {{loquesea}} ===
>> eij peoijgipwg
>> == {{codigo+id2}} ==
>> jfpoj
>> === {{loquesea}} ===
>> eij peoijgipwg
>> == {{codigo+id3}} ==
>> jfpoj
>> === {{loquesea}} ===
>> eij peoijgipwg"""
>>
>> Otra opción es que sea:
>> opcion2 = """
>> f safsj ofsa
>> sadjfoisajd
>> == {{codigo+id1}} ==
>> jfpoj
>> === {{loquesea}} ===
>> eij peoijgipwg
>> == otras cosas ==
>> gjopeij
>> ep ep o"""
>>
>> Otra opción es que sea:
>> opcion3 = """
>> f safsj ofsa
>> sadjfoisajd
>> == {{codigo+id1}} ==
>> jfpoj
>> === {{loquesea}} ===
>> eij peoijgipwg"""
>>
>> Es decir, quiero coger todo lo que haya entre "== {{codigo+id1}} ==" y una
>> de las tres posibilidades que son:
>>
>> - "== {{codigo+idn}} ==" el siguiente código idn que no sea id1.
>>
>> - "== otras cosas ==" (estas otras cosas siempre empiezan con signo '='
>> repetido dos veces, pero no más, al principio de línea).
>> - "fin de la cadena", es decir, que no encuentra ni lo primero ni lo segundo
>> y llega al final.
>>
>> Si además de darme un patrón me lo explicáis un poco os lo agradezco.
>>
>> Muchas gracias.
>>
>> Saludos.
>> _______________________________________________
>> Python-es mailing list
>> Python-es@python.org
>> https://mail.python.org/mailman/listinfo/python-es
_______________________________________________
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es