zoukankan      html  css  js  c++  java
  • re模块

    re模块
    核心函数和方法
    match函数
    尝试用正则表达式方法从字符串的开头匹配,如果匹配成功,则返回一个匹配对象;否则返回None
    search函数
    在字符串中查找正则表达式模式的第一次出现,如果匹配成功,则返回一个匹配对象,否则返回None
    group方法
    使用match或search匹配成功后,返回的匹配对象可以通过group方法获取匹配内容
    findall函数
    在字符串中查找正则表达式模式的所有(非重复)出现;返回一个匹配对象的列表
    finditer函数
    和findall()函数有相同的功能,但返回的不是类表而是迭代器;对于每个匹配,该迭代器返回一个匹配对象
    compile函数
    对正则表达式模式进行编译,返回一个正则表达式对象
    不是必须要用这种方式,但在大量匹配的情况下,可以提升效率
    split方法
    根据正则表达式中的分隔符把字符分割为一个列表,并返回成功匹配的列表
    字符串也有类似的方法,但是正则表达式更加灵活
    sub方法
    把字符串中所有匹配正则表达式的地方替换成新的字符串

    正则表达式
    匹配单个字符

    记号                 说明
    .                    匹配任意字符(换行符除外)
    [···x-y···]          匹配字符组里的任意字符
    [^ ···x-y···]        匹配不在字符组里的任意字符
    d                   匹配任意数字,与[0-9]同义
    w                   匹配任意数字字母字符,与[0-9a-zA-Z]同义
    s                   匹配空白字符,与[ vf ]同义

    匹配一组字符

    记号                 说明
    literal              匹配字符串的值
    re1|re2              匹配正则表达式re1或re2
    *                    匹配前面出现的正则表达式零次或多次
    +                    匹配前面出现的正则表达式一次或多次
    ?                   匹配前面出现的正则表达式零次或1次
    {M,N}               匹配前面出现的正则表达式至少M次最多N次

    其他元字符
    记号                 说明
    ^                    匹配字符串的开始
    $                    匹配字符串的结尾
                       匹配单词的边界
    ()                   对正则表达式分组
    n                  匹配以保存的子组

    贪婪匹配

    *、+和?都是贪婪匹配操作符,在其后加上?可以取消其贪婪匹配行为
    正则表达式匹配对象通过groups函数获取子组

  • 相关阅读:
    valueof这个万能方法,将string转换为int或者int转换为string都可以
    java的数组index[]方括号内是可以进行算数运算的
    项目工程的包package与文件夹的关系
    导入项目后下载jar包问题理解
    MySQL 5.6.19 二进制安装
    左右 android AES 所述机器的一部分 javax.crypto.BadPaddingException: pad block corrupted
    iOS_词典阵列 按key分组和排序
    Maven真——聚合和继承(于)
    机器学习Matlab打击垃圾邮件的分类————朴素贝叶斯模型
    切点算法模板(Cut-vertex)
  • 原文地址:https://www.cnblogs.com/ghming/p/8432753.html
Copyright © 2011-2022 走看看