Maison >développement back-end >Tutoriel Python >Comment puis-je extraire des sous-chaînes entre des marqueurs en Python à l'aide d'expressions régulières ?
Correspondance de sous-chaînes entre marqueurs en Python
Lorsque vous travaillez avec des chaînes en Python, vous pouvez rencontrer le besoin d'extraire une sous-chaîne spécifique située entre deux marqueurs connus. Cette tâche peut être accomplie à l'aide d'expressions régulières, un outil puissant pour la correspondance de modèles.
Solution utilisant des expressions régulières
Pour extraire la sous-chaîne entre les marqueurs en Python, suivez ces étapes :
Exemple
Considérez le code suivant extrait :
import re text = 'gfgfdAAA1234ZZZuijjk' m = re.search('AAA(.+?)ZZZ', text) if m: found = m.group(1) # found: '1234'
Dans cet exemple, la chaîne de texte contient la sous-chaîne d'intérêt, qui est située entre les marqueurs « AAA » et « ZZZ ». À l'aide de la fonction re.search(), nous recherchons le modèle 'AAA(. ?)ZZZ'. Le (. ?)部分匹配零个或更多字符,尽可能短。
Si le modèle est trouvé, nous récupérons la sous-chaîne correspondante en utilisant m.group(1) où 1 indique le premier groupe de capture dans le motif. La sous-chaîne extraite est ensuite stockée dans la variable trouvée.
Alternativement, vous pouvez utiliser l'approche suivante :
import re text = 'gfgfdAAA1234ZZZuijjk' try: found = re.search('AAA(.+?)ZZZ', text).group(1) except AttributeError: # AAA, ZZZ not found in the original string found = '' # found: '1234'
Cette approche gère le cas où les marqueurs ne sont pas trouvés dans la chaîne d'origine en fournissant un comportement par défaut dans le bloc except.
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!