(6) Introduction à la bibliothèque Re (expression régulière)
(1) Définition de base
- Expression régulière, regex, RE
- Les expressions régulières sont des expressions utilisées pour exprimer de manière concise un ensemble de chaînes
- Les expressions régulières sont un outil pour exprimer les idées de «concision» et de «fonctionnalités» pour les chaînes
- Les expressions régulières peuvent être utilisées pour déterminer l'attribut d'une chaîne
(2) Fonction
- Caractéristique du type de texte (virus, intrusion, etc.)
- Rechercher ou remplacer un ensemble de chaînes en même temps
- Correspond à tout ou partie de la chaîne (application la plus importante)
(3) Grammaire
- Les expressions régulières sont composées de caractères et d'opérateurs
1. Opérateurs couramment utilisés
2. Exemples de grammaire
3. Exemples classiques
4. Expression régulière correspondant à l'adresse IP
(4) Re bibliothèque
Introduction à la bibliothèque 1.Re
- La bibliothèque Re est la bibliothèque standard de Python, principalement utilisée pour la correspondance de chaînes
- importer re
2. Type de représentation
- type de chaîne brute (type de chaîne native)
- type de chaîne (plus fastidieux)
- Recommandation: lorsque les expressions régulières contiennent des caractères d'échappement, utilisez une chaîne brute
# r'text'格式
r'[1-9]\d{5}'
r'\d{3}-\d{8}|\d{4}-\d{7}
# string格式
r'[1-9]\\d{5}'
r'\\d{3}-\\d{8}|\\d{4}-\\d{7}
3. Fonctions principales de la bibliothèque Re
import re
#pattern : 正则表达式的字符串或原生字符串表达
#repl : 替换匹配字符串的字符串
#string : 待匹配字符串
#count : 匹配的最大替换次数
#maxsplit: 最大分割数,剩余部分作为最后一个元素输出
#flags : 正则表达式使用时的控制标记 ///下附常用标记说明
re.search(pattern, string, flags=0)
re.match(pattern, string, flags=0)
re.findall(pattern, string, flags=0)
re.split(pattern, string, maxsplit=0, flags=0)
re.finditer(pattern, string, flags=0)
re.sub(pattern, repl, string, count=0, flags=0)
#Re库的等价用法
#函数式用法:一次性操作
rst = re.search(r'[1-9]\d{5}', 'BIT 100081')
#面向对象用法:编译后的多次操作
regex = re.compile(r'[1-9]\d{5}')
rst = regex.search('BIT 100081')
#将正则表达式的字符串形式编译成正则表达式对象
regex = re.compile(pattern, flags=0)
4. Re Library Match object
- L'objet Match est le résultat d'une correspondance et contient beaucoup d'informations de correspondance
1> Faire correspondre les propriétés des objets
2> Méthode de correspondance d'objet
3> Faire correspondre l'instance d'objet
5. Correspondance gourmande et correspondance minimale de la bibliothèque Re
- Faites correspondre plusieurs articles de différentes longueurs en même temps, lequel est retourné?
1. Correspondance gourmande
- La bibliothèque Re utilise une correspondance gourmande par défaut, c'est-à-dire que la sous-chaîne avec la correspondance la plus longue est sortie
2. Correspondance minimale
- Comment sortir la sous-chaîne la plus courte?
- Tant que la longueur de sortie peut être différente, elle peut être modifiée pour la plus petite correspondance en ajoutant? Après l'opérateur