15-正则表达式

  • 正则表达式常用符号
表达式符号 符号功能
. 任意字符
\w 数字、字母、下划线
\W 非数字、字母、下划线
\d 数字
\D 非数字
\s 空白、换行、制表符
\S 非空白、换行、制表符
^ 开头
$ 结束
\b 单词边界
\B 非单词边界
【15-正则表达式】



  • 组合符号
符号 功能
[ ] 匹配 [ ] 中出现的任意一个字符
[ ^ ] 匹配不在 [ ] 中出现的任意一个字符
* 匹配0次或者多次
+ 匹配1次或这多次
? 匹配0次或者1次
| 匹配满足竖线前后内容的任何一方
( ) 让()中的正则条件编程一个整体,进行整体操作
{N} 匹配N次
{N , } 匹配至少N次
{M , N} 匹配至少M次,最多N次
[0-9] 匹配任意一个数字字符
[a-z] 匹配a到z之间的任意一个字母字符
[A-Z] 匹配A到Z之间的任意一个字母字符
[a-zA-Z] 匹配任意一个字母字符




  • 注意
  • 正则中:\ [] {} () * + ? ^ | $ 这些字符,都有特殊的意义,所以要在正则表达式中单纯的表达这些符号,需要在符号前面加反斜杠‘ \ ’
  • '-' [] ^ \ 在括号中可能是特殊字符,需要加 \
  • . {} () * + ? $ |在括号中可以不用加\,来表示字符




  • 常用方法
方法 功能
compile ( 正则字符串 ) 将正则表达式字符串转换成对象
fullmatch(正则表达式,需要匹配的字符串) 完全匹配
.group ( ) 获取匹配到的内容
.span ( ) 获取匹配到的范围
.start ( ) 获取匹配到的开始下标
.end ( ) 获取匹配到的结束下标
.string 判断字符串是否是某个字符串
match (正则表达式,字符串) 不完全匹配;从头开始匹配
search ( 正则表达式,字符串 ) 获取整个字符串中第一个符合正则条件的子串
findall ( 正则表达式,字符串) 获取所有满足正则条件的子串
.finditer ( 正则表达式,字符串) 同上,返回的是一个迭代器
.split ( 正则表达式,字符串 ) 按照匹配到的内容进行切割
sub ( 正则表达式,新的字符串,原字符串 ) 用心的内容替换匹配到的子串





15-正则表达式
文章图片
易竹小居士.jpg

    推荐阅读