【python----发轫之始】【正则表达式总结】
2021-05-03 07:27
标签:hpa 其他 flags 特殊字符 模块 一个 none upd 失败 能够按照某种模式匹配一系列具有相似特征的字符串。 *: 作用是代表前面的字符匹配0-n次。 \d : 匹配任意十进制数字。 如遇到. $ ^ 等特殊字符,我们就得用“\”进行转义。 利用 () 进行分组, 运用(? 贪婪模式是指在匹配成功的情况下,尽可能多的匹配。 以 abacaxcd 为例子: 由此例子可以看到 贪婪模式的* 取到了最大 3个, 而非贪婪模式的*取到了最小0个。 返回正则表达式对象 (将pattern 转化为 一个正则表达式) 正则表达式一般用 r 开头 从起始位置匹配一个模式,如果起始位置开始没有就返回None 查找字符串中所有(非重复)出现的正则表达式模式,返回一个匹配列表。 查找字符串中第一次出现的正则表达式模式,匹配成功返回匹配对象,失败返回None. 以元组的形式返回正则表达式中的所有信息。 返回指定组别中的元素。 从1开始计数。 以字典的形式返回组名和对应的信息。 以pattern为界限将string中的内容进行分割, 分割元素不保存。 将pattern中的repl 替换成tring ,支持交换顺序,将函数放入其中的操作。 【python----发轫之始】【正则表达式总结】 标签:hpa 其他 flags 特殊字符 模块 一个 none upd 失败 原文地址:https://www.cnblogs.com/Attacking-vincent/p/13192823.html初识正则表达式
比如说:垃圾邮箱拦截、邮件分类、验证手机号码等等功能。正则表达式中的符号
?:作用是代表前面的字符出现0次或1次,即前面的字符可有可无。
+:作用是代表前面的字符匹配1-n次,至少出现一次。
-:作用是指出一个范围,如[0-9],[a-z],[A-Z]。
$: 在字符串中一般放在最后,代表的是$前面的字符必须匹配给出的字符串的结尾字符,如果不是的话,返回空。
^:表示字符串的起始位置,如果在[]中则表示非的意思。
以hello world为例: ^he. => hel (如果变成shello...则会匹配失败) ,.ld$ => rld (如果变成....world!则会匹配失败).
.:能够匹配除\n以外的任何一个字符。
{}:{N}表示匹配N次前面出现的正则表达式,例如:a{3}bc表示的就是aaabc,不能多也不能少,固定的;{N,M}表示最多M次,最少N次,最大化优先。
[]:表示能匹配中的任意单字符。正则表达式中的特殊字符
\w : 匹配任何数字字母字符。
\s :匹配任何空格字符。匹配特殊字符
正则表达式分组
贪婪模式与非贪婪模式
非贪婪模式是指在匹配失败的情况下,尽可能少的匹配。
默认都是贪婪模式。
使用贪婪模式(也就是一般模式) ab.c => abacaxc
使用非贪婪模式 ab.?c => abac正则的进阶
re 模块
re.compile(pattern, flag = 0)
例如:
re.compile(r‘hello‘,re.I)
这个是忽略大小写的字符串匹配,还有其他的比如说:
re.M 用^ 和 $ 来作为开头和结尾。 re.S "."能匹配所有的字符。re.match(pattern, string, flags=0)
findall(string[, pos[, endpos]])
re.search(pattern, string, flags=0)
groups()
groups(num = 0)
groupdict()
split(pattern, string, maxsplit=0, flags=0)
sub(pattern, repl, string, count=0, flags=0)
文章标题:【python----发轫之始】【正则表达式总结】
文章链接:http://soscw.com/index.php/essay/81695.html