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

    一。正则表达式初识

    1.定义:

    又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

    2.使用

    1)导入re模块

    import re

    常用正则表达式的表示方法:

    单个字符匹配:

    数量匹配:

     边界匹配:

    2)运用:

    正则表达式前需要加r,如:r“aA”

    1.匹配

    my_re = "xiangwangshiheyuanfang"
    #match,从最开始的地方进行匹配,若没有返回None
    print(re.match(r"wang",my_re))
    #search,不区分前后,任意匹配
    print(re.search(r"wang",my_re))
    运行结果:

    3)获得匹配结果:

    #group(),获取匹配的内容
    re_result=re.search(r"wang",my_re)
    print(re_result.group())

    #re.findall 返回所有的匹配结果。
    print(re.findall(r"g",my_re))
    运行结果:

    3.常用匹配方式:

    1.单个字符匹配

    1)‘.’

    #匹配一个字符,除了
    
    print(re.search(r".",my_re))
    #匹配a后面的一个字符
    print(re.search(r"a.",my_re))
    运行结果:

     注意:

    1.匹配是从左边第一个开始的。

    2.‘.’前面加上字符后,会返回字符+字符后面的字符,‘.’后面加字符也是同理

    2)‘[]’

    #匹配[]中的某一个字符
    print(re.search(r'[agw]',my_re))
    运行结果:

    3)d、D

    my_remath="xiangwangshiheyuanfang521@"
    #d 匹配一个数字
    print(re.search(r"d",my_remath))
    #D匹配一个非数字
    print(re.search(r"D",my_remath))
    运行结果:

     注意:

    #[0-9]与d等价

    print(re.search(r"[0-9]",my_remath))
    运行结果:

    4)w与W

    my_remath="_xiangwangshiheyuanfang521@"
    #匹配 大写小字母和_
    print(re.search(r"w",my_remath))
    #匹配非单词字符
    print(re.search(r"W",my_remath))
    运行结果:

    2.匹配 数量

    1)*

    #匹配*前面的字符任意次,有可能没有
    print(re.search(r"D*",my_remath))
    第运行结果:

    2)+、?

    #+极可能多的匹配,?只匹配一次
    print(re.search(r"d+",my_remath))
    print(re.search(r"d+?",my_remath))
    运行结果:

    3){m}

    my_remath="_xiaaangwangshiheyuanfang521@"
    #匹配a出现过几次,从结果中可以看出只对连在一起的值匹配有效果
    print(re.search(r"a{1,}",my_remath))
    #不连在一起的值
    print(re.search(r"g",my_remath))
    运行结果:

     4.替换数据

    1)sub

    sub(pattern, repl, string, count=0, flags=0)
    my_remath="_xiaaangwangshiheyuanfang#需要实力#521@"
    #正则提取表达式
    pattern=r"#(.*?)#"
    #需要替换的值
    value_group="需要money"
    #执行替换操作,count代表替换次数,0代表全部替换
    print(re.sub(pattern,value_group,my_remath,1))
    运行结果:

     4.利用添加类属性动态替换测试用例中的固定值

    待续ing

    count
  • 相关阅读:
    Python基础教程【读书笔记】
    Python基础教程【读书笔记】
    Python基础教程【读书笔记】
    Python基础教程【读书笔记】
    JS实现焦点图轮播效果
    JQuery+CSS3实现Ajax加载时loading效果
    JQuery实现锚点平滑滚动
    CSS3之嵌入Web字体
    HTML5本地存储
    impress.js初体验——前端装X利器
  • 原文地址:https://www.cnblogs.com/newsss/p/13174595.html
Copyright © 2011-2022 走看看