正则表达式
定义
正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")。
* 匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \*。
+ 匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 \+。
. 匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用 \. 。
[ 标记一个中括号表达式的开始。要匹配 [,请使用 \[。
https://www.runoob.com/regexp/regexp-syntax.html
https://www.runoob.com/python/python-reg-expressions.html
re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。
正则表达式
1、re.match 函数
从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功,则返回none。
re.mathch(pattern, string, flags=0)
2、re.search() 函数
扫描整个字符串并返回第一个成功的匹配
re.search(pattern, string, flags=0)
3、re.compile函数
编译正则表达式,生成一个表达式(pattern)对象,供mathch()和search()这两个函数使用
pattern = re.compile(pattern[,flags])
import re
pattern = re.compile(r'')
基本:
1、
+:前面的字符出现 >=1;
*:前面的字符出现 >=0;
- 和 + 限定符都是贪婪的,因为它们会尽可能多的匹配文字,只有在它们的后面加上一个 ? 就可以实现非贪婪或最小匹配。
例: <.*?>
?:前面的字符出现 0/1;
.:匹配任何单字符;
{n}:匹配n次;
{n,}:匹配>=n次;