zoukankan      html  css  js  c++  java
  • Python 正则表达式

    在Python提供了正则表达式的模块re,这里针对re模块进行一个小总结

    1.re.match

    匹配字符串的开头,如果匹配成功,就会返回match 对象,使用group接受打印

    test ="qilixiang=jay&shuangjiegun=jay&wanku=panweibo"
    m = re.match(r"w+=w+&",test)
    
    if m:
        print 're.match:',m.group(0)
    else:
        print '没有匹配到!'

    输出结果:re.match: qilixiang=jay&


    2.re.search

    匹配整个字符串,直到匹配成功,返回一个match,却别re.match

    test ="qilixiang=jay&shuangjiegun=jay&wanku=panweibo"
    m = re.search(r"w+=w+&",test)
    
    if m:
        print "re.search:",m.group(0)
    else:
        print '没有匹配到!'

    输出结果:re.search: qilixiang=jay&


    3.re.findall

    匹配所有的字符,如果又符合的返回所有匹配到的,并且返回一个list

    test ="qilixiang=jay&shuangjiegun=jay&wanku=panweibo"
    m = re.findall(r"w+=w+&",test)
    print "re.findall:",m

    输出结果:re.findall: [‘qilixiang=jay&’, ‘shuangjiegun=jay&’]


    4.re.sub

    通过正则,匹配进行替换

    test ="qilixiang=jay&shuangjiegun=jay&wanku=panweibo"
    m = re.sub(r"w+=w+&",'%',test,1)
    print "re.sub:",m

    输出结果:re.sub: %shuangjiegun=jay&wanku=panweibo


    5.re.split

    根据正则表达式,对字符串进行分割,结果返回一个list

    test ="qilixiang=jay&shuangjiegun=jay&wanku=panweibo"
    m = re.split(r"&+",test)
    print "re.split:",m

    输出结果:re.split: [‘qilixiang=jay’, ‘shuangjiegun=jay’, ‘wanku=panweibo’]


    6.re.compile

    对正则表达式,进行编译,生成新的正则表达式,并且可以设定正则的规则

    test ="qilixiang=jay&shuangjiegun=jay&wanku=panweibo"
    res = re.compile(r"w+=w+&")
    m = res.findall(test)
    print "compile  re.findall:",m

    输出结果:compile re.findall: [‘qilixiang=jay&’, ‘shuangjiegun=jay&’]


    关于正则表达式的讲解参考网图:

    这里写图片描述

  • 相关阅读:
    vue 封装 全局弹窗 js-dom
    vue 封装时间戳 用过滤方法封装
    前端上传img 并且添加水印
    原生ajax 封装
    vue filters 过滤用法 时间戳方法
    node+mysql+vue 搭建前后端分离基础框架
    基于jq div拉拽功能
    进程间通信方式+线程间通信方式
    只能生成栈对象和只能生成堆对象
    linux的基础命令行和shell的区别
  • 原文地址:https://www.cnblogs.com/xinleishare/p/5262930.html
Copyright © 2011-2022 走看看