Maison >développement back-end >Tutoriel Python >Comment utiliser les expressions régulières en Python ?

Comment utiliser les expressions régulières en Python ?

WBOY
WBOYoriginal
2023-06-05 10:40:491357parcourir

Python est un langage de programmation puissant qui prend en charge les expressions régulières pour la manipulation de texte. Alors que l’analyse de données et le traitement de texte deviennent de plus en plus courants dans tous les domaines, la maîtrise des expressions régulières est devenue une compétence de base de plus en plus importante. Dans cet article, nous allons apprendre à utiliser les expressions régulières en Python.

  1. Importer le module re

L'utilisation d'expressions régulières en Python nécessite l'importation du module re. Bien entendu, avant d’utiliser des expressions régulières, nous devons d’abord nous familiariser avec les règles syntaxiques des expressions régulières. Voici quelques symboles regex de base et leurs significations :

Essayons d'utiliser le module re pour une simple correspondance de chaînes. Par exemple, nous voulons faire correspondre les sous-chaînes sous la forme de « hello world » dans la chaîne. Le code est le suivant :
import re

# 声明一个字符串
str1 = "hello world"

# 定义正则表达式
pattern = "hello world"

# 使用 re 模块进行匹配
result = re.search(pattern, str1)
print(result.group())
hello world
Caractères spéciaux Recherche de mots se terminant par parenthèses:
# 定义正则表达式
pattern = r"w+($"

# 使用 re 模块进行匹配
result = re.search(pattern, "I have a list (item1, item2).")
print(result.group())
symbole signifiant
. correspond à n'importe quel caractère sauf les nouvelles lignes
d correspond aux chiffres
D match non-chiffres
w correspond à des lettres, des chiffres, des traits de soulignement ou des caractères chinois
W correspond à d'autres caractères à l'exception des lettres, des chiffres, des traits de soulignement ou des caractères chinois
s correspond à tous les caractères d'espacement, y compris les espaces, les tabulations, les nouvelles lignes, etc.
S correspond à tous les caractères autres que des espaces
^ correspond au début de la chaîne
$ correspond à la fin de la chaîne
* Match 0 fois ou plus
+ Match 1 fois ou plus
? Match 0 ou 1 fois
{n} Match exactement n fois
{n,} correspond à n fois ou plus
{m,n} correspond à m~n fois
[...] correspond entre crochets Tous les caractères, y compris les plages de caractères, Caractères exclus, etc. check
(?!...) Pré-vérification négative avant
(?<=...) Pré-vérification positive inversée
(? Pré-vérification négative inversée
Correspondances de chaînes
Résultat de sortie :
Lorsque nous devons rechercher des caractères spéciaux. caractères, nous avons besoin d'ajouter des caractères d'échappement () dans les expressions régulières. Par exemple:
Sortie:
    list(

  1. Recherchez des URL contenant. sous-chaînes dans le texte. Dans ce cas, nous pouvons utiliser la fonction findall. Par exemple, si nous voulons trouver toutes les adresses e-mail dans une chaîne, le code est le suivant :
# 定义正则表达式
pattern = r"https?://S+.w+(?<!/)$"

# 使用 re 模块进行匹配
result = re.search(pattern, "Here is a link: https://www.google.com.")
print(result.group())

Résultat de sortie :

https://www.google.com
  1. Remplacer la chaîne
  2. Nous pouvons également utiliser des expressions régulières pour remplacer des chaînes en Python . Par exemple, pour remplacer tous les nombres d'une chaîne par des signes *, le code est le suivant :

# 定义正则表达式
pattern = r"w+@w+.w{2,3}"

# 使用 re 模块进行匹配
result = re.findall(pattern, "Please contact me at alice@gmail.com or bob@hotmail.com")
print(result)

Résultat de sortie :
    ['alice@gmail.com', 'bob@hotmail.com']
  • Résumé
Dans cet article, nous avons appris les bases de l'utilisation des expressions régulières en Python . N'oubliez pas que les expressions régulières peuvent faciliter de nombreuses tâches de traitement de texte. Maîtriser les bases des expressions régulières est une compétence essentielle pour les data scientists, les ingénieurs en apprentissage automatique et les développeurs de logiciels.

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