python regex python-2.x

python - Hacer coincidir el texto entre dos cadenas con expresión regular



regex python-2.x (2)

Con expresión regular:

>>> import re >>> s = ''Part 1. Part 2. Part 3 then more text'' >>> re.search(r''Part 1(.*?)Part 3'', s).group(1) ''. Part 2. ''

Sin expresión regular, este funciona para su ejemplo:

>>> s = ''Part 1. Part 2. Part 3 then more text'' >>> a, b = s.find(''Part 1''), s.find(''Part 3'') >>> s[a+6:b] ''. Part 2. ''

Me gustaría usar una expresión regular que coincida con cualquier texto entre dos cadenas:

Part 1. Part 2. Part 3 then more text

En este ejemplo, me gustaría buscar "Parte 1" y "Parte 3" y luego obtener todo lo que sería: ". Parte 2".

Estoy usando Python 2x.


Utilice re.search

>>> import re >>> s = ''Part 1. Part 2. Part 3 then more text'' >>> re.search(r''Part 1/.(.*?)Part 3'', s).group(1) '' Part 2. '' >>> re.search(r''Part 1(.*?)Part 3'', s).group(1) ''. Part 2. ''

O use re.findall , si hay más de una ocurrencia.