美文网首页
Day18笔记

Day18笔记

作者: 为了生活的苟且 | 来源:发表于2019-01-16 17:30 被阅读0次

    一、贪婪

    .什么是贪婪:在正则中控制匹配不确定次数的符号后边可以加?,来表示尽可能少的匹配
    在非贪婪的时候,匹配是尽可能多的匹配
    注意:尽可能少是在能够匹配到的前提下尽可能少
    加‘?’是贪婪,表示尽可能少,不加‘?’的时候就是非贪婪,表示尽可能多

    二、正则表达式

    1、compile(正则表达式)--->将正则表达式转换整正则对象
    编译后可以直接通过对象调用相关的对象方法

    2、fullmatch(正则表达式,字符串)--->让字符串和正则表达式完全匹配,匹配成功返回匹配对象,匹配失败返回None
    应用:检测字符串内容是否符合要求,例如:检测账号、密码、判断手机号、身份证号等是否合法
    匹配对象
    a、span ---匹配到的字符串在原字符串中的下标范围(结果是元祖),获取整个或分组正则表达式匹配到的内容的范围
    b、start、end---匹配到的字符串在原字符串中的开始下标和结束下标
    c、group(组)---匹配到的字符串(结果是字符串),也可以获取到分组的字符串
    d、groups()---同时获取所有分组匹配到的字符串(结果是元祖)
    e、string---获取原字符串

    3、match(正则表达式,字符串)--->让字符串的开头和正则表达式进行匹配(匹配成功结果是匹配对象,否是是None),字符串长度可以延伸

    4、search(正则表达式,字符串)-->在字符串中去匹配第一个符合正则表达式的子串,匹配成功结果是匹配对象,否是是None

    5、split(正则表达式,字符串)--->将字符串按照满足正则要求的子串进行切割(返回值是列表)

    6、sub(正则表达式,新子串,原字符串)--->将原字符串能够和正则表达式匹配的子串替换成新字符串,产生一个新的字符串

    7、findall(正则表达式,字符串)--->在字符串中获取满足正则表达式的所有的字符串(结果是列表)
    注意:如果正则表达式中有分组,直接获取到的是分组中匹配到的内容,如果有多个分组列表中的元素是元祖

    8、finditer(正则表达式,字符串)--->在字符串中获取满足正则表达式的所有子串(结果是迭代器,元素是匹配对象)

    9、re.I-->忽略大小写,匹配的约束条件是放在函数的flags参数中

    相关文章

      网友评论

          本文标题:Day18笔记

          本文链接:https://www.haomeiwen.com/subject/qhamdqtx.html