Maison >développement back-end >Tutoriel Python >Comment Regex peut-il être utilisé pour extraire une sous-chaîne entre deux sous-chaînes prédéterminées dans une chaîne Python ?

Comment Regex peut-il être utilisé pour extraire une sous-chaîne entre deux sous-chaînes prédéterminées dans une chaîne Python ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-19 05:43:02736parcourir

How can Regex be used to extract a substring between two predetermined substrings in a Python string?

Rechercher des chaînes avec Regex

Récupérer la sous-chaîne entre deux sous-chaînes prédéterminées dans une chaîne est une tâche de programmation courante. Une approche consiste à diviser la chaîne d'entrée en sous-chaînes de début et de fin. Cette technique, bien que fonctionnelle, peut ne pas être optimale en termes d'efficacité et peut gêner la lisibilité du code.

Une solution plus pythonique et plus efficace consiste à utiliser des expressions régulières (regex). Les expressions Regex permettent une mise en correspondance et une extraction de chaînes puissantes. Par exemple, l'expression régulière suivante atteint notre objectif :

import re

s = 'asdf=5;iwantthis123jasd'
result = re.search('asdf=5;(.*)123jasd', s)
print(result.group(1))

L'expression commence par faire correspondre la sous-chaîne de départ 'asdf=5;', suivie d'un groupe (.*), qui capture tous les caractères entre le sous-chaînes de début et de fin. Enfin, il fait correspondre la sous-chaîne de fin '123jasd' pour délimiter la zone de capture.

Le result.group(1) récupère la chaîne capturée, qui est la sous-chaîne souhaitée. L'utilisation de regex pour cette tâche fournit une approche pythonique concise par rapport à la méthode de fractionnement.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn