Maison >développement back-end >Tutoriel Python >Comment utiliser les expressions régulières Python pour la correspondance de chaînes

Comment utiliser les expressions régulières Python pour la correspondance de chaînes

WBOY
WBOYoriginal
2023-06-23 10:17:0124237parcourir

L'expression régulière est un puissant outil de traitement de chaînes qui peut nous aider à effectuer facilement des opérations de correspondance, d'extraction et de remplacement de chaînes. En Python, nous pouvons utiliser les fonctions et méthodes fournies par le module re pour implémenter des opérations liées aux expressions régulières. Cet article explique comment utiliser les expressions régulières Python pour la correspondance de chaînes.

1. Syntaxe de base des expressions régulières

Lors de l'utilisation d'expressions régulières Python, nous devons comprendre certaines règles de syntaxe de base. Voici quelques symboles et significations d'expressions régulières couramment utilisés :

  1. ^ : correspond au début d'une chaîne.
  2. $ : Faites correspondre la fin de la chaîne.
  3. . : Faites correspondre n'importe quel personnage.
  4. * : Faites correspondre le caractère précédent zéro ou plusieurs fois.
  5. + : Faites correspondre le personnage précédent une ou plusieurs fois.
  6. ? : Faites correspondre le caractère précédent zéro ou une fois.
  7. [] : fait correspondre n'importe quel caractère répertorié entre parenthèses.
  8. [^] : correspond à n'importe quel caractère à l'exception des caractères répertoriés entre parenthèses.
  9. () : marque la position de début et de fin d'une sous-expression.

Par exemple, utiliser ^ et $ peut faire correspondre exactement la chaîne entière :

import re

pattern = "^hello$"
string = "hello"
result = re.match(pattern, string)
print(result)

Le résultat est :

<re.Match object; span=(0, 5), match='hello'>

Dans le code ci-dessus, la signification de ^hello$ est de faire correspondre les chaînes qui commencent et se terminent par bonjour. Puisque la chaîne remplit exactement cette condition, re.match renvoie un objet de correspondance. Si la correspondance échoue, la valeur de retour est Aucune.

2. Fonction re.match

La fonction re.match peut faire correspondre une expression régulière au début d'une chaîne donnée si la correspondance est réussie, elle renvoie un objet correspondant, sinon elle renvoie Aucun. Voici un exemple d'utilisation de re.match :

import re

pattern = "^hello$"
string = "hello, world!"
result = re.match(pattern, string)

if result:
    print("匹配成功")
else:
    print("匹配失败")

Dans le code ci-dessus, puisque la chaîne chaîne ne remplit pas les conditions du modèle d'expression régulière, re.match renvoie None et le résultat de sortie est "match failed".

3. Fonction re.search

La fonction re.search peut faire correspondre les expressions régulières dans la chaîne entière Si la correspondance est réussie, elle renvoie un objet correspondant, sinon elle renvoie Aucun. Voici un exemple d'utilisation de re.search :

import re

pattern = "world"
string = "hello, world!"
result = re.search(pattern, string)

if result:
    print("匹配成功")
else:
    print("匹配失败")

Dans le code ci-dessus, puisque la chaîne chaîne contient la sous-chaîne mondiale, re.search renvoie un objet correspondant et le résultat de sortie est "match réussi".

4. Fonction re.findall

La fonction re.findall peut renvoyer une liste qui contient toutes les sous-chaînes correspondant à l'expression régulière dans la chaîne entière. Voici un exemple utilisant re.findall :

import re

pattern = "d+"
string = "hello, 123 world! 456"
result = re.findall(pattern, string)

print(result)

Dans le code ci-dessus, l'expression régulière d+ peut correspondre à un ou plusieurs nombres, donc re.findall renvoie une liste contenant 123 et 456.

5. Fonction re.sub

La fonction re.sub peut remplacer toutes les sous-chaînes correspondant à l'expression régulière par la chaîne spécifiée. Voici un exemple d'utilisation de re.sub :

import re

pattern = "d+"
string = "hello, 123 world! 456"
result = re.sub(pattern, "number", string)

print(result)

Dans le code ci-dessus, l'expression régulière d+ peut correspondre à un ou plusieurs nombres, donc re.sub remplacera à la fois 123 et 456 par la chaîne "number".

6. Fonction re.split

La fonction re.split peut utiliser des expressions régulières pour diviser des chaînes. Voici un exemple d'utilisation de re.split :

import re

pattern = "s+"
string = "hello, world!"
result = re.split(pattern, string)

print(result)

Dans le code ci-dessus, l'expression régulière s+ peut correspondre à un ou plusieurs espaces, donc re.split utilisera les espaces de la chaîne comme délimiteurs pour diviser la chaîne, la finale la sortie est ["hello", "world!"] deux chaînes.

7. Résumé

Cet article explique comment utiliser les expressions régulières Python pour la correspondance de chaînes. En maîtrisant la syntaxe de base des expressions régulières ainsi que les fonctions et méthodes fournies par le module re, nous pouvons nous aider à effectuer plus efficacement le traitement des chaînes et l'exploration de texte. Il convient de noter que les expressions régulières utilisent souvent des caractères spéciaux et doivent être échappées, sinon des erreurs inattendues se produiront. Pour en savoir plus sur les expressions régulières, veuillez vous référer aux didacticiels et à la documentation pertinents.

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