Maison  >  Article  >  développement back-end  >  Fonctions d'expression régulière qui vous permettent de mieux traiter le texte

Fonctions d'expression régulière qui vous permettent de mieux traiter le texte

PHPz
PHPzoriginal
2023-06-15 21:28:35659parcourir

Regular Expression (Regular Expression) est un outil utilisé pour faire correspondre des modèles de texte. Grâce à certaines règles grammaticales spécifiques, vous pouvez rechercher et faire correspondre le contenu qui répond aux exigences du texte. Cette technologie de recherche est largement utilisée dans le traitement de texte et la programmation. , nettoyage des données et autres domaines.

Dans le traitement de texte réel, il est souvent nécessaire d'extraire des fragments de texte qui respectent des règles spécifiques et d'effectuer certaines opérations sur ceux-ci, telles que le remplacement, la suppression, l'extraction, etc. Ces opérations peuvent être effectuées très facilement à l'aide d'expressions régulières. Qu'il s'agisse d'un éditeur de texte ou d'un langage de programmation, des fonctions d'expression régulière pertinentes sont intégrées aux développeurs.

1. Fonctions d'expression régulière couramment utilisées

  1. re.compile(pattern, flags) : Compilez une expression régulière en un objet d'expression régulière pour plus de commodité. Utilisez-le plusieurs fois. fois plus tard.
  2. re.search(pattern, string, flags) : Recherchez les correspondances d'expressions régulières dans la chaîne et renvoyez le premier objet correspondant, ou Aucun s'il n'y a pas de correspondance.
  3. re.match(pattern, string, flags) : Essayez de faire correspondre l'expression régulière depuis le début de la chaîne. Si la correspondance est réussie, renvoyez le premier objet correspondant, s'il n'y a pas de correspondance, retourner Aucun.
  4. re.findall(pattern, string, flags) : recherche tous les éléments de la chaîne qui correspondent à l'expression régulière et renvoie une liste, ou une liste vide s'il n'y a pas de correspondance.
  5. re.sub(pattern, repl, string, count=0, flags=0) : utilisez repl pour remplacer tous les éléments de la chaîne qui correspondent au modèle d'expression régulière. Vous pouvez limiter le nombre de remplacements via. le paramètre count S’il n’y a pas de correspondance, la chaîne d’origine est renvoyée.
  6. re.split(pattern, string, maxsplit=0, flags=0) : Divisez la chaîne en une liste selon le modèle d'expression régulière et renvoyez la liste. Vous pouvez limiter le nombre de divisions via. le paramètre maxsplit S'il n'y a pas de correspondance, la chaîne d'origine est renvoyée.
  7. re.finditer(pattern, string, flags=0) : recherche tous les éléments de la chaîne qui correspondent au modèle d'expression régulière et renvoie un itérateur via lequel l'objet correspondant est accessible en séquence.

2. Cas d'application pratiques

  1. Extraire le numéro de téléphone portable :

Dans des scénarios d'affaires réels , nous devrons peut-être extraire le numéro de téléphone mobile du texte, nous pouvons utiliser des expressions régulières pour faire correspondre le modèle du numéro de téléphone mobile.

Le code est le suivant :

import re

text = "我的电话号码是:13888888888,欢迎来电咨询。"

pattern = re.compile(r"1[3456789]d{9}")

res = re.search(pattern, text)

if res:

    print("电话号码:", res.group())

else:

    print("未匹配到电话号码")

Le résultat de sortie est : Numéro de téléphone : 13888888888.

  1. Nettoyage des données :

Lors de l'analyse des données, il peut être nécessaire de supprimer certains caractères inutiles des données, tels que des signes de ponctuation spécifiques , balises HTML, etc. Cette fonctionnalité peut être facilement réalisée à l'aide d'expressions régulières.

Le code est le suivant :

import re

text = "<title>数据分析入门指南</title>"

pattern = re.compile(r"<.+?>")

res = re.sub(pattern, "", text)

print(res)

Le résultat de sortie est : Guide de démarrage de l'analyse des données.

  1. Vérification du format de l'e-mail :

Lors de l'enregistrement des utilisateurs, de la connexion et d'autres scénarios, il est souvent nécessaire de vérifier si le format de l'e-mail est correct, vous pouvez utiliser des expressions régulières. La méthode d'expression est implémentée.

Le code est le suivant :

import re

email = "test@test.com"

pattern = re.compile(r"^w+([-+._]w+)*@w+([-.]w+)*.w+([-.]w+)*$")

res = re.match(pattern, email)

if res:

    print("邮箱格式正确")

else:

    print("邮箱格式错误")

Le résultat de sortie est : le format de l'e-mail est correct.

3. Résumé

Bien que les expressions régulières soient difficiles à comprendre, la maîtrise des fonctions et des règles grammaticales pertinentes peut jouer un rôle important dans le traitement de texte, la programmation, etc. Les fonctions d'expression régulière couramment utilisées incluent re.compile(), re.search(), re.match(), re.findall(), re.sub(), re.split(), re.finditer(), etc. , Des fonctions telles que la recherche de texte, le nettoyage, la vérification du format, etc. peuvent être facilement mises en œuvre. En utilisation réelle, il est nécessaire de sélectionner des modèles d'expressions régulières appropriés selon différents scénarios pour améliorer l'efficacité et la précision du traitement.

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