zoukankan      html  css  js  c++  java
  • [Python]正则课程 再次回顾

    正则表达式的最大匹配个数,65535? re.DEBUG 可以查询到最大匹配个数,其实是返回针对每个regex的debug信息 


    使用compile编译的表达式时会把最新的几个缓存起来,所以就可以同时使用几个正则表达式而不需要担心正则的编译问题

    在re模块中的几个对象
    re.RegexObject  是编译后的正则表达式对象,方法上和直接使用re模块很多都是类似的
    常用的方法和属性
    search  查找 如果没有匹配就会返回N0ne 
    match   查找 如果没有匹配就会返回None
    split   分割
    findall  直接匹配返回list
    finditer 返回的是个iterator
    sub    查找并替换  
    
    flags 类型 
    groups   需要抓取的有几个串
    pattern  返回的是表达式本身
    
    re.MatchObject 当match或者search方法匹配到以后返回的对象
    常用的方法和属性
    group  只返回能匹配到的值
    groups  返回匿名分组匹配返回值元组
    groupdict 返回命名分组匹配返回值的字典
    start  匹配成功开始位置
    end   匹配成功结束位置
    re 属性:返回使用的正则对象
    
    分组: 有匿名分组 和 命名分组


    疑问:


    ?经常对比的就是search 和 match的: match从字符串的开始匹配 search任意位置开始匹配

    ? 贪婪模式和非贪婪模式字面意思很好理解,但是对匹配结果准确把握不怎么容易,
    准备单门找点资料总结下

    ? 字符边界匹配, ^ $ \A \Z \b有什么不同 

    ?不同匹配参数的不同匹配模式


    tips:

    In [182]: p = re.compile(r'(\w+) (\w+)')
    In [183]: s = 'ni hao,good boy'
    In [184]: print p.sub(r'\2 \1',s)
    hao ni,boy good






  • 相关阅读:
    linux_进程管理
    Linux-日志管理
    Httpd
    Linux-源码安装包管理
    Linux-计划任务管理
    Linux-LVM管理
    Linux-系统磁盘管理
    Linux-yum工具的使用
    Linux-rpm包管理
    Linux-网络进阶管理
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3030487.html
Copyright © 2011-2022 走看看