Méthode re.sub() de Python

Python re 模块Module re de Python


re.sub()est Pythonrefonction du module pourremplacer les éléments correspondants.

Il trouve toutes les sous-chaînes correspondantes dans la chaîne et les remplace par le contenu spécifié.

Signification du mot: subest l'abréviation de substitute (remplacer).


Syntaxe de base et paramètres

Format de syntaxe

re.sub(pattern, repl, string, count=0, flags=0)

Description du paramètre

  • pattern: l'expression régulière à faire correspondre
  • repl: le texte de remplacement, qui peut être une chaîne ou une fonction
  • string: la chaîne d'origine
  • count: le nombre maximal de remplacements ; 0 signifie tout remplacer
  • flags: les options d'expression régulière

Description de la fonction

  • Valeur de retour: renvoie la nouvelle chaîne après remplacement.

Exemples

Exemple 1 : Remplacement de base

Exemple

import re

text = "Python est bien, Python est génial"

# Remplacer Python par Java
result = re.sub(r'Python', 'Java', text)

print(result)

Sortie attendue :

Java is good, Java is great

Exemple 2 : Remplacer un nombre spécifié de fois

Exemple

import re

text = "Python est bien, Python est génial"

# Remplacer uniquement le premier
result = re.sub(r'Python', 'Java', text, count=1)

print(result)

Sortie attendue :

Java is good, Python is great

Exemple 3 : Remplacer à l'aide d'une expression régulière

Exemple

import re

text = "Mon numéro de téléphone est 138-1234-5678"

# Remplacer les 4 chiffres du milieu du numéro de téléphone par ****
result = re.sub(r'\d{4}', '****', text)

print(result)

Sortie attendue :

我的手机号是 138-****-5678

Exemple 4 : Utilisation de références de groupe

Exemple

import re

text = "2024-04-02"

# Échanger l'ordre de l'année, du mois et du jour
result = re.sub(r'(\d{4})-(\d{2})-(\d{2})', r'\3/\2/\1', text)

print(result)

Sortie attendue :

02/04/2024

Exemple 5 : Utilisation d'une fonction comme contenu de remplacement

Exemple

import re

text = "3 pommes, 5 bananes, 8 oranges"

# Remplacer les nombres par nombre + 1
def add_one(match):
    return str(int(match.group()) + 1)

result = re.sub(r'\d+', add_one, text)

print(result)

Sortie attendue :

苹果4个,香蕉6个,橙子9个

Python re 模块Module re de Python

Autres extensions