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

    1.re.sub()

    替换字符串中的某些子串,可以用正则表达式来匹配被选子串。

    re.sub(pattern, repl, string, count=0, flags=0)

    pattern:表示正则表达式中的模式字符串;

    repl:被替换的字符串(既可以是字符串,也可以是函数);

    string:要被处理的,要被替换的字符串;

    count:匹配的次数, 默认是全部替换

    2.正则表达式基础

    正则表达式的语法规则

    下面是Python中正则表达式的一些匹配规则,图片资料来自CSDN

    20130515113723855

    3.正则表达式相关注解

    (1)数量词的贪婪模式与非贪婪模式

    正则表达式通常用于在文本中查找匹配的字符串。Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符;非贪婪的则相反,总是尝试匹配尽可能少的字符。例如:正则表达式”ab*”如果用于查找”abbbc”,将找到”abbb”。而如果使用非贪婪的数量词”ab*?”,将找到”a”。

    注:我们一般使用非贪婪模式来提取。

    (2)反斜杠问题

    与大多数编程语言相同,正则表达式里使用””作为转义字符,这就可能造成反斜杠困扰。假如你需要匹配文本中的字符””,那么使用编程语言表示的正则表达式里将需要4个反斜杠”\\”:前两个和后两个分别用于在编程语言里转义成反斜杠,转换成两个反斜杠后再在正则表达式里转义成一个反斜杠。

    Python里的原生字符串很好地解决了这个问题,这个例子中的正则表达式可以使用r”\”表示。同样,匹配一个数字的”\d”可以写成r”d”。有了原生字符串,妈妈也不用担心是不是漏写了反斜杠,写出来的表达式也更直观勒

  • 相关阅读:
    smart code
    上传图片格式简单校验和回显
    【Spring框架】<mvc:default-servlet-handler/>的作用
    (转) SpringMVC学习笔记-
    MybatisX idea 快速开发插件
    mybatis-generator数据库注释实体类生成以及generatorConfig文件配置
    mysql类型为varchar double类型字符串求和多出多个小数
    <c:set> 标签
    MySQL Navicat Premium 保存sql语句
    springboot项目对接支付宝支付
  • 原文地址:https://www.cnblogs.com/graybird/p/12462340.html
Copyright © 2011-2022 走看看