Maison >développement back-end >Tutoriel Python >Comment extraire du texte entre des chaînes avec des expressions régulières en Python ?
Extraction de texte entre des chaînes à l'aide d'expressions régulières
En Python, vous pouvez exploiter des expressions régulières pour extraire du texte situé entre deux chaînes spécifiées dans un plus grand chaîne. Prenons l'exemple suivant :
"Part 1. Part 2. Part 3 then more text"
Votre objectif est d'isoler le texte entre "Partie 1" et "Partie 3", qui est ". Partie 2. ". Pour y parvenir, vous pouvez utiliser la fonction re.search() :
<code class="python">import re s = 'Part 1. Part 2. Part 3 then more text' match = re.search(r'Part 1\.(.*?)Part 3', s) if match: text_between = match.group(1) print(text_between)</code>
Dans ce cas, l'expression régulière r'Part 1.(.*?)Part 3' attribue ".*?" comme groupe de capture. Le "?" garantit que ce groupe n'est pas gourmand, ce qui signifie qu'il capturera la chaîne la plus courte possible qui satisfait l'expression régulière. Le .* correspond à n’importe quel caractère et le . représente n'importe quel caractère à l'exception d'une nouvelle ligne.
S'il existe plusieurs occurrences, vous pouvez utiliser re.findall() à la place :
<code class="python">matches = re.findall(r'Part 1(.*?)Part 3', s) for match in matches: print(match)</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!