Python re正则语法

"""
总结:
    . 匹配任意字符除了(\n)
    ^ 开头, 如果是[^a_z]表示非
    $ 匹配到结尾
    [] 范围 a_z A_Z 符号
    预定义:
    \s 匹配空格
    \b 边界 如:\b[a-zA-Z]\w*\.py\b
    \d 匹配数字
    \w [0-9a-zA-Z_]
    如果是反面则大写
    如:\S 非空格 \D 非数字
    如果匹配长度
    量词 * + ?
        *(星号): 匹配前面的字符零次或多次例如,ab*可以匹配“a”、“ab”、“abb”、“abbb”等。
        +(加号): 匹配前面的字符至少一次。例如,ab+可以匹配“ab”、“abb”、“abbb”等。
        ?(问号): 匹配前面的字符零次或一次。例如,ab?可以匹配“a”和“ab”两个字符串
    手机号码正则
    re.match('1[35789]\d{9}$',phone)
    {9}固定9位
    {6,}大于6位
    {,9}小于9位
    | 逻辑运算 可以理解为or
    () 来捕获匹配的内容
    演示案例:
    1.匹配不包括字母a到z的任何字符,可以使用:[^a-z]
    2.匹配任意的一个数字,可以使用:\d
    3.匹配以".py"结尾的单词,可以使用:\b\w*.py\b (其中\b匹配单词边界,\w匹配任意单词字符,*匹配任意个数)
    4.匹配手机号码,可以使用:re.match('1[35789]\d{9}$', phone) (其中1[35789]匹配开头为1和3、5、7、8、9之一的数字,\d{9}匹配固定的9位数字,$以结尾)
    使用量词可以匹配特定数量的重复元素:
    1.匹配6个或更多数字的密码,可以使用:\d{6,}
    2.匹配少于9个数字的号码,可以使用:\d{,9}
    使用逻辑运算符|可以匹配多个模式之一:
    1.匹配以www或http开头的URL,可以使用:(www|http)://\S+
    使用括号()可以捕获匹配的内容:
    2.匹配日期格式为yyyy-mm-dd,可以使用:(\d{4})-(\d{2})-(\d{2})(其中\d匹配任意数字字符,{n}匹配n次)
    HTML标签正则 可以使用分组的方式获取如 htm = '<html><h1>abc</h1></html>' 
result = re.match(r'<(?P<name1>\w+)><(?P<name2>\w+)>(.+?)</(?P=name2)></(?P=name1)>',htm) 
print(result.group(3)) # 输出abc
"""
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值