为了账号安全,请及时绑定邮箱和手机立即绑定

python正则表达式

难度初级
时长 1小时29分
学习人数
综合评分9.40
211人评价 查看评价
9.7 内容实用
9.4 简洁易懂
9.1 逻辑清晰
  • 正则表达式的概念

    查看全部
    0 采集 收起 来源:正则简介

    2019-07-05

  • import re:python 正则表达式模块

    生成对象:

    pa = re.compile(r' imooc\n') 括号里面r是什么作用?不转义,也就是说\n不代表换行,而是直接的字符串

    匹配有没有下划线的实例:

    pa1 = re.compile(r'_')

    ma1=pa1.match('_value')----生成的正则表达式对象去跟括号里内容匹配,查找有没有下划线。

    ma1.group()

    输出:'_' (匹配上了)

    查看全部
  • 3、

    sub(patten,repl,string,count=0,flags=0)

    将字符串中匹配正则表达式部分替换为其他值

    4、

    split(patten,repl,string,count=0,flags=0)

    根据匹配分割字符串,返回分割字符串组成的列表

    查看全部
  • 1、 

    search(pattern,string,flags=0)

    在一个字符串中查找匹配

    2、

    findall(pattern,string,flags=0)

    找到匹配,返回所以匹配部分的列表



    查看全部
  • import re
    
    from urllib import request
    
    
    def spider_mm():
        #<img src="http://i1.whymtj.com/uploads/tu/201905/10220/z6cs1a6z.jpg" width="180" height="270" />
        req = request.urlopen('http://www.umei.cc/meinvtupian/')
        buf = req.read().decode('utf-8')
        #print(buf)
        list_url = re.findall(r'src=.+\.jpg', buf)
        #print(list_url)
    
        # 把src="去掉
        for i in range(len(list_url)):
            list_url[i] = re.sub(r'src="', '', list_url[i])
            print(list_url[i])
    
    
        i = 0
        for url in list_url:   #读取并保存到本地
            f = open('E:\\image\\' + str(i) + '.jpg', 'wb+')
            #req = request.urlopen('http:' + url)  # 必须要加上http:
            req = request.urlopen( url)  # 必须要加上http:
            buf = req.read()
            f.write(buf)
            f.close()
            i += 1
    
    
    
    if __name__=="__main__":
        spider_mm()


    查看全部
  • import re
    
    
    if __name__=="__main__":
        str = "hello world 100, 96"
        print(str.find('100'))   #在字符串中查找100
    
        info = re.search(r'\d+', str)
        print(info.group())
    
        str1 = 'C++=100,Java=90, python=80'
        info1 = re.search(r'\d+', str1)
        print(info1.group())
    
        info2 = re.findall(r'\d+', str1)
        print(info2)
    
        sum = sum([int(x) for x in info2])
        print(sum)
    
        str3 = 'imooc videonum =1000'
        info3 = re.sub(r'\d+', '100', str3)  #将字符串中匹配正则表达式的部分替换为其他值
        print(info3)
    
        info4 = re.sub(r'\d+', '1001', str3)
        print(info4)
    
        str4 = 'I:I C++ Java Python'
        info5 = re.split(r':| ', str4)
        print(info5)


    查看全部
  • re(正则库)的方法:

    search:在一个字符串中查找匹配

    findall:找到匹配,返回所有匹配部分的列表

    sub:将匹配出来的部分替换为其他值

    split:分割字符串,返回分割后的数组


    查看全部
  • | 匹配左右任意一个表达式

    (ab) 括号中表达式作为一个分组

    \<number> 引用编号为number的分组匹配到的字符串

    (?P<name>) 分组起别名

    (?P=name) 引用别名为name的分组匹配字符串


    查看全部
  • 多字符匹配

    re.match(r'[_a-zA-Z]+[_\w]*',"asfjl;ka ")

    +:前面的一个字符可以出现1次或无数次

    *:前面的一个字符可以出现0次或无数次

    以下划线或者字母开头(+号的作用),后面可以是下划线或者其他字符的字符串

    <br>

    ?:匹配前面的一个字符0次或者1次<br>

    [1-9]?[0-9] #09是可以被match上的 虽然只是返回一个0 奇怪。。

    {m} 匹配前一个字符m次

    {m,n} 匹配前一个字符m到n次

    *? +? ?? 指虽然可以匹配上但是不返回后面的


    查看全部
  • . 匹配除 "\n" 之外的任何单个字符。要匹配包括 '\n' 在内的任何字符,请使用象 '[.\n]' 的模式。<br>
    \d 匹配一个数字字符。等价于 [0-9]。<br>
    \D 匹配一个非数字字符。等价于 [^0-9]。<br>
    \s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。<br>
    \S 匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。<br>
    \w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。<br>
    \W 匹配任何非单词字符。等价于 '[^A-Za-z0-9_]'。


    查看全部
  • 正则表达式语法

    查看全部
  • #!/usr/bin/python3
    # -*- coding: UTF-8 -*-
    #desc: 正则匹配查找
    
    import re
    
    if __name__=="__main__":
        str = "I like python"
        str1 = "python"
        pa = re.compile(r'python')  #匹配python字符串, r表示是原字符串
        print(type(pa))  #查看类型
        print(pa.match(str))  #None表示没有匹配成功
        print(pa.match(str1)) #匹配成功
    
        ma = pa.match(str1)
        print(ma.group())  #返回字符串或元祖
        print(ma.span())   #返回索引位置
        print(ma.string)   #返回匹配的字符串
        print(ma.re)   #返回匹配实例
    
        pa1 = re.compile(r'_')
        ma1 = pa1.match('_value')
        print(ma1.group())


    查看全部
  • re(正则库)的方法

    查看全部
  • 导入模块        import re

    生成Pattern   pa = re.compile(r'要查找的内容')

    生成Match    ma = pa.match(被查找的字符串)

    ma.group() #返回匹配字符串或元组

    ma.span() #返回匹配字符串的位置

    ma.string #返回被匹配字符串

    ma.re #返回匹配实例


    查看全部
  • 正则表达式的作用:

     1.使用单个字符串来描述匹配一系列符合其语法规则的字符串

     2.是对字符串操作的一种逻辑公式

     3.处理文本和数据 

    4.正则表达式过程:依次拿出表达式和文本中的字符比较,如果每一个字符都能匹配,则匹配成功、否则匹配失败。

    查看全部
    1 采集 收起 来源:正则简介

    2019-05-25

举报

0/150
提交
取消
课程须知
本课程是Python中级课程 1、本课程在linux讲解,最好有linux开发环境 1、熟练掌握Python开发语言基础语法
老师告诉你能学到什么?
1.正则表达式基本语法 2.使用re模块处理文本

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!