zoukankan      html  css  js  c++  java
  • 正则表达式

    正则表达式的符号与方法

    >>常用符号:

     >>.:匹配任意字符,换行符 除外

    >>> import re
    >>> a = 'abc123'
    >>> b = re.findall('a.',a)
    >>> print(b)
    ['ab']
    >>> b = re.findall('a..',a)
    >>> print(b)
    ['abc']

     >>*:匹配前一个字符0次或无限次

    >>> import re
    >>> a = 'abca123'
    >>> b = re.findall('a*',a)
    >>> print(b)
    ['a', '', '', 'a', '', '', '', '']

     >>?:匹配前一个字符0次或1次

    >>> import re
    >>> a = 'abca123'
    >>> b = re.findall('a?',a)
    >>> print(b)
    ['a', '', '', 'a', '', '', '', '']

     >>.*:贪心算法

    >>> import re
    >>> a = 'fdsfsdafasfaxxaxxfdsafsdfasxxbxxfdsafasfsaxxcxxdfafdsa'
    >>> b = re.findall('xx.*xx',a)
    >>> print(b)
    ['xxaxxfdsafsdfasxxbxxfdsafasfsaxxcxx']

     >>.*?:非贪心算法

    >>> import re
    >>> a = 'fdsfsdafasfaxxaxxfdsafsdfasxxbxxfdsafasfsaxxcxxdfafdsa'
    >>> b = re.findall('xx.*?xx',a)
    >>> print(b)
    ['xxaxx', 'xxbxx', 'xxcxx']

     >>():括号内的数据作为结果返回

    >>> import re
    >>> a = 'fdsfsdafasfaxxaxxfdsafsdfasxxbxxfdsafasfsaxxcxxdfafdsa'
    >>> b = re.findall('xx(.*?)xx',a)
    >>> print(b)
    ['a', 'b', 'c']

     >>d+:匹配数字

    >>> import re
    >>> a = 'ab312321ab21312'
    >>> b = re.findall('d+',a)
    >>> print(b)
    ['312321', '21312']

    >>常用方法

     >>findall:匹配所有符合规律的内容,返回包含结果的列表

     >>search:匹配并提取第一个符合规律的内容,返回一个对象

    >>> import re
    >>> a = 'abca123'
    >>> b = re.search('a?',a).group(0)
    >>> print(b)
    a

     >>Sub:替换符合规律的内容,返回替换后的值

    >>> import re
    >>> a = 'abca123'
    >>> b = re.sub('.*?123','0123',a)
    >>> print(b)
    0123
  • 相关阅读:
    Python try/except/finally
    EmailMessage类
    HTML DOM 初学笔记
    JavaScript 初学备忘录
    html style标签
    Django 导出csv文件 中文乱码问题
    Html 列表实现展开和收起
    Django CreateView 简单使用
    Django用户认证
    Nginx负载均衡配置实例详解
  • 原文地址:https://www.cnblogs.com/airener/p/6016177.html
Copyright © 2011-2022 走看看