zoukankan      html  css  js  c++  java
  • Python 25 天 re模块

    re模块是python提供的⼀一套关于处理理正则表达式的模块. 核⼼心功能有四个:
    1.findall 查找所有,返回list
    lst = re.findall("查找内容(正则表达式)","字符串")
    2.search 进行匹配,如匹配到第一个结果就会返回这个结果,匹配不上则返回None
    ret = re.search('表达式',"字符串").group()
    3.match 只能从字符串的开头进行匹配
    ret = re.match('表达式',"字符串").group()
    4.finditer 和findall差不多 不过返回的是迭代器
    it = re.finditer("表达式","字符串")
    for el in it:
    print(el.group())
    5.其他操作
    分割: ret = re.split("[ab]","qwerafjbcd")
    先按'a'分割得到'qwer'和'fjbcd',在对'qwer'和'fjbcd'分别按'b'分割
    print(ret) # ['qwer', 'fj', 'cd']

    ret=re.split("d+","eva3egon4yuan")
    print(ret) #结果 : ['eva', 'egon', 'yuan']

    ret=re.split("(d+)","eva3egon4yuan")
    print(ret) #结果 : ['eva', '3', 'egon', '4', 'yuan']
    #在匹配部分加上()之后所切出的结果是不不同的,
    #没有()的没有保留留所匹配的项,但是有()的却能够保留留了了匹配的项,
    #这个在某些需要保留留匹配部分的使⽤用过程是⾮非常重要的。

    替换:
    sub: ret = re.sub("表达式"(old),"new","字符串")
    返回字符串
    subn: ret = re.subn("表达式"(old),"new","字符串")
    返回元组(替换的结果,替换了了多少次)
    编译成对象:
    compile:
    obj = re.compile(r'd{3}') # 将正则表达式编译成为⼀一个 正则表达式对象,规则要匹配的是3个数字
    ret = obj.search('abc123eeee') # 正则表达式对象调⽤用search, 参数为待匹配的字符串串
    print(ret.group())
  • 相关阅读:
    Xpath 和Css Selector使用
    JS 基础
    python中requests.session的妙用
    HTML基础之DOM
    吃着火锅唱着歌学会Docker
    SAAS方法论
    Python操作MySQL
    Flask中session实现原理
    人的成长永远不会大于自己的思想
    Serializers 序列化组件
  • 原文地址:https://www.cnblogs.com/sophie99/p/9775195.html
Copyright © 2011-2022 走看看