Maison > développement back-end > Tutoriel Python > Comment remplacer des sous-groupes en Python à l'aide de « re.sub » ?

Comment remplacer des sous-groupes en Python à l'aide de « re.sub » ?

Barbara Streisand
Libérer: 2024-11-04 13:16:29
original
610 Les gens l'ont consulté

How do you Replace Subgroups in Python Using `re.sub`?

Remplacement de sous-groupes en Python à l'aide de re.sub

En Python, la fonction re.sub permet d'effectuer des substitutions basées sur des modèles d'expressions régulières. Cependant, lorsqu'il s'agit de groupes capturés dans le modèle, il est crucial de comprendre comment récupérer leurs valeurs pour les remplacer.

Supposons que nous souhaitions remplacer la chaîne "foobar" par "foo123bar" à l'aide de la fonction re.sub. En utilisant le modèle "(foo)" pour faire correspondre la partie "foo", nous pouvons rencontrer des problèmes si nous le remplaçons simplement par "1123". Comme le démontre l'exemple fourni, cela entraînera une substitution incorrecte de "J3bar".

Pour remplacer correctement le groupe dans le modèle, nous devons utiliser le "g<1>" syntaxe. Cette syntaxe nous permet de faire référence au premier groupe capturé par l'expression régulière à l'aide de son index. Par conséquent, le modèle de remplacement correct est "g<1>123" :

<code class="python">import re

pattern = r'(foo)'
result = re.sub(pattern, r'\g<1>123', 'foobar')
print(result)  # Output: foo123bar</code>
Copier après la connexion

Comme expliqué dans la documentation, "g<1>" représente la sous-chaîne correspondant au premier groupe. Cela garantit que la partie "foo" de la chaîne d'origine est remplacée par sa valeur correspondante suivie de "123".

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal