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
  • 相关阅读:
    leetcode 390. 消除游戏
    C12Test5 record
    IELTS Writing Task 1: two-chart answer
    rails work
    java 依赖注入
    Java1.7已经舍弃substr了
    在存储过程创建临时表,插入字段,更新字段
    在存储过程里创建临时表,往表中直接插入数据
    存储过程里分页的例子
    验证方法、自己写一个日期控件、
  • 原文地址:https://www.cnblogs.com/airener/p/6016177.html
Copyright © 2011-2022 走看看