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

    使用正则表达式,需要导入re这个模块

    1 >>> import re
    2 >>> pattern=r'abc'
    3 >>> str='abcdefghijabc11111abc'
    4 >>> re.findall( pattern, str )
    5 ['abc', 'abc', 'abc']
    6 >>> 

    r定义正则表达式的规则,这里匹配abc这个字符串

    元字符([])匹配一个范围

    >>> str="abc afc awc"
    >>> pattern=r"a[bfw]c"
    >>> re.findall( pattern, str )
    ['abc', 'afc', 'awc']
    >>> pattern=r"a[bf]w"
    >>> re.findall( pattern, str )
    []
    >>> pattern=r"a[bf]c"
    >>> re.findall( pattern, str )
    ['abc', 'afc']
    >>> 

    ^:以...开头,用在中括号里面表示非(取反,或者说排除)

    1 >>> import re
    2 >>> str="ghostwu:hi my name is ghostwu, nice to meet you!"
    3 >>> pattern=r"ghostwu"
    4 >>> re.findall( pattern, str )
    5 ['ghostwu', 'ghostwu']
    6 >>> pattern=r"^ghostwu"
    7 >>> re.findall( pattern, str )
    8 ['ghostwu']
    9 >>> 
    1 >>> str="abc"
    2 >>> pattern=r"a[b]c"
    3 >>> re.findall( pattern, str )
    4 ['abc']
    5 >>> pattern=r"a[^b]c"
    6 >>> re.findall( pattern, str )
    7 []
    8 >>> 

    $:以....结尾

    >>> str="ghostwu:hi my name is ghostwu, nice to meet you! Hanmeimei: Hi,ghostwu"
    >>> pattern=r"ghostwu"
    >>> re.findall( pattern, str )
    ['ghostwu', 'ghostwu', 'ghostwu']
    >>> pattern=r"ghostwu$"
    >>> re.findall( pattern, str )
    ['ghostwu']
    >>> 

    $在中括号中被当做普通的字符串匹配

     1 >>> pattern=r"a[bcd$]"
     2 >>> re.findall( pattern, 'ab' )
     3 ['ab']
     4 >>> re.findall( pattern, 'ac' )
     5 ['ac']
     6 >>> re.findall( pattern, 'ad' )
     7 ['ad']
     8 >>> re.findall( pattern, 'abe' )
     9 ['ab']
    10 >>> re.findall( pattern, 'a$' )
    11 ['a$']
    12 >>> 

    转义字符

     1 >>> str="^ghostwu ^ghostwu ^ghostwu"
     2 >>> pattern=r"^ghostwu"
     3 >>> re.findall( pattern, str )
     4 []
     5 >>> pattern=r"ghostwu"
     6 >>> re.findall( pattern, str )
     7 ['ghostwu', 'ghostwu', 'ghostwu']
     8 >>> pattern=r"^ghostwu"
     9 >>> re.findall( pattern, str )
    10 ['^ghostwu', '^ghostwu', '^ghostwu']
    11 >>> 

  • 相关阅读:
    React Native移动框架功能研究
    移动app框架inoic功能研究
    使用Ivy管理项目中的依赖
    使用Ant自动化我们的java项目生成
    Java构建工具Ant小记(一)
    打造Ubuntu下Java开发环境
    解决系统系统管理员不允许使用保存的凭据登录远程计算机
    Ubuntu全新安装firefox最新版本
    jQuery Ready 与 Window onload 的区别(转)
    程序员的素养
  • 原文地址:https://www.cnblogs.com/ghostwu/p/8619406.html
Copyright © 2011-2022 走看看