正则表达式的学习

大标 2022年3月16日19:11:50
评论
18

基础

\\d是数字,
\\w匹配字母
.可以匹配任意字符
用*表示任意个字符(包括0个)
用+表示至少一个字符
用?表示0个或1个字符
用{n}表示n个字符
用{n,m}表示n-m个字符
用\'\\\'转义可以实现匹配特殊字符
[0-9a-zA-Z\\_]可以匹配一个数字、字母或者下划线;
[0-9a-zA-Z\\_]+可以匹配至少由一个数字、字母或者下划线组成的字符串,比如\'a100\',\'0_Z\',\'Py3000\'等等;
[a-zA-Z\\_][0-9a-zA-Z\\_]*可以匹配由字母或下划线开头,后接任意个由一个数字、字母或者下划线组成的字符串,也就是Python合法的变量;
[a-zA-Z\\_][0-9a-zA-Z\\_]{0, 19}更精确地限制了变量的长度是1-20个字符(前面1个字符+后面最多19个字符)。
A|B可以匹配A或B
^表示行的开头,^\\d表示必须以数字开头。 
$表示行的结束,\\d$表示必须以数字结束。

re模块

Python提供re模块,包含所有正则表达式的功能。由于Python的字符串本身也用\\转义,所以一般会使用Python的r前缀,就不用考虑转义的问题了

s = r\'ABC\\-001\' # Python的字符串
# 对应的正则表达式字符串不变:
# \'ABC\\-001\'

可以用match()方法判断是否匹配,如果匹配成功,返回一个Match对象,否则返回None

  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
大标
  • 本文由 发表于 2022年3月16日19:11:50
  • 转载请务必保留本文链接:https://www.tanhuibiao.com/script/qita/5074.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: