发表于: 2021-04-10 21:57:08

1 1035


今天完成的事情:

查看了正则表达式

任务二还在进行中


明天计划的事情:

继续完成js任务二

继续将正则表达式没看完的部分看完



收获:

1、了解了什么时正则表达式:

定义:正则表达式用于定义一些字符串的规则。计算机可以根据正则表达式,来检查一个字符串是否符合指定的规则;或者将字符串中符合规则的内容提取出来。

常见匹配模式

  • \w:匹配字母数字及下划线
  • \W:匹配非字母数字下划线
  • \s:匹配任意空白字符,等价于 [\t\n\r\f]
  • \S:匹配任意非空字符
  • \d:匹配任意数字,等价于 [0-9]
  • \D:匹配任意非数字
  • \A:匹配字符串开始
  • \Z:匹配字符串结束,如果是存在换行,只匹配到换行前的结束字符串
  • \z:匹配字符串结束
  • \G:匹配最后匹配完成的位置
  • \n:匹配一个换行符
  • \t:匹配一个制表符
  • ^:匹配字符串的开头
  • $:匹配字符串的末尾
  • . :匹配任意字符,除了换行符,当re.DOTALL标记被指定时,则可以匹配包括换行符的任意字符
  • [...] :用来表示一组字符,单独列出([amk]匹配'a','m'或'k')
  • [^...] :不在[]中的字符([^abc]匹配除了a,b,c之外的字符)
  • * :匹配0个或多个的表达式
  • + :匹配1个或多个的表达式
  • ?:匹配0个或1个由前面的正则表达式定义的片段,非贪婪方式
  • {n} :精确匹配n个前面表达式
  • {n,m} :匹配n到m次由前面的正则表达式定义的片段,贪婪方式
  • a|b :匹配a或b
  • () :匹配括号内的表达式,也表示一个组

  • 转义字符:如果在匹配中要用到它本来的含义,需要进行转义(在其前面加一个\  ,也可以加上原生字符串 r )

正则表达式还分为贪婪匹配和非贪婪匹配:

贪婪匹配:匹配尽可能多的字符

非贪婪匹配:匹配尽可能少的字符


re.compile :将正则表达式转义为正则表达式对象,方便复用

re.findall :搜索字符串,以列表的形式返回全部能匹配的字符串

re.sub :替换字符串中每一个匹配的子串返回替换后的字符串(也就是将其替换掉,再返回一个新的字符串)

re.search :扫描整个字符串,返回匹配成功的第一个结果





返回列表 返回列表
评论

    分享到