正则一些规则

--------------锚字符(边界字符)-------------

^ 行首匹配,和在[]里的^不是一个意思
$ 行尾匹配

\A 匹配字符串开始,它和^的区别是,\A只匹配整个字符串的开头,即使在re.M模式下也不会匹配它行的行首
\Z 匹配字符串结束,它和$的区别是,\Z只匹配整个字符串的结束,即使在re.M模式下也不会匹配它行的行尾

\b 匹配一个单词的边界,也就是值单词和空格间的位置

\B 匹配非单词边界

-------------------匹配多个字符------------------------

说明:下方的x、y、z均为假设的普通字符,n、m(非负整数),不是正则表达式的元字符
(xyz) 匹配小括号内的xyz(作为一个整体去匹配)
x? 匹配0个或者1个x
x* 匹配0个或者任意多个x(.* 表示匹配0个或者任意多个字符(换行符除外))
x+ 匹配至少一个x
x{n} 匹配确定的n个x(n是一个非负整数)
x{n,} 匹配至少n个x
x{n,m} 匹配至少n个最多m个x。注意:n <= m
x|y |表示或,匹配的是x或y

---------------特殊-------------------
'''
*? +? x? 最小匹配,通常都是尽可能多的匹配,可以使用这种解决贪婪匹配

(?:x) 类似(xyz),但不表示一个组

posted on 2019-07-20 13:50  幻嘤剑舞  阅读(84)  评论(0编辑  收藏  举报

导航