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

    import re

    #正则表达式是用来匹配字符串的,是一种小型的语言,和列表字典没有任何关系,仅仅是操作字符串,引入正则表达式主要是为了模糊匹配

    s = "Process finished with exit code"

    #元字符
    # .:点号,任意单个字符,但是不能匹配换行符,且只能代指一个字符
    # ^:尖角号,是行首匹配,只从行首开始匹配
    # $:美元符,是行尾匹配,只从行尾开始匹配
    # *:星号,次数匹配,匹配前面的字符0次或者多次,默认匹配是贪婪匹配的
    # {n,m}:次数匹配,匹配前面的单个字符最少n次,最多m次
    # {n}:匹配前面的单个字符n次
    # +:匹配前面的单个字符至少一次
    # ?:匹配前面的单个字符0次或者1次
    # []:中括号,匹配中括号中的任意单个字符,但是有三个字符是例外
    # -中划线,表示一个范围,比如1-9表示1到9之间的任意一个数字
    # ^尖角号,表示取反,匹配任意一个不属于括号中的字符
    #
    # :和元字符搭配使用,表示脱意符,表示元字符不代表特殊的意思,只表示一个普通的字符
    # 和普通字符搭配使用,表示特殊的意义,比如下面的例子
    # d:表示任意一个数字
    # D:表示任意一个非数字
    # w:表示任意一个字母或者数字
    # W:表示任意一个非字母或者非数字
    # s:表示任意空白字符
    # S:表示任意一个非空白字符
    # :表示匹配任意一个单词的边界,任意的特殊字符都被认做单词的边界
    #
    # ():表示一个分组
    # |: 表示或,代表匹配竖线左右的两端的字符串



    print(re.findall("he..o","hello world,hello again"))

    print(re.findall("^he..o","hello world,hello again"))

    print()







    #findall方法:返回所有匹配到的结果,然后返回到一个列表中
    # 参数:
    # pattern:规则
    # string:要匹配的字符串
    # flag:标志位,修改默认规则的,一般不用




    # search方法:
    # 如果匹配上,则返回一个match的对象,这个对象可以调用group方法来返回匹配的字符串
    # 返回匹配到的第一个对象

    # match方法:
    # 如果匹配上,则返回一个对象,如果匹配不上,则返回none
    # 只在字符串最开始的时候开始匹配
    #

    # split方法:分割字符串

    print(re.split("[ad]","1a122dba444"))

    # 先用a来分割,分割好后,在用d来分割

    # sub方法:替换字符串,第一个是规则,第二个是规则匹配到的字符串替换的内容,第三个是字符串
    print(re.sub("a..x","zabcdef","alexaaaaaaaaaaaaa"))

    print(re.findall(".com","www.cctv.com"))

    # re.compile():可以把一个正则表达式编译为一个对象,其他re的方法如果也需要这个规则匹配,那么直接调用这个对象即可
    obj = re.compile(".com")

    # 那么其他re的方法就可以直接用这个编译好的对象了
    # obj.findall()
    # obj.sub()
    # obj.search()
    # obj.match()
    # obj.split()


    s = "1-2*((60-30+(-40/5)*(9-2*5/3+7/3*99/4*2998+10*564/14))-(-4*3)/(16-3*2))"
  • 相关阅读:
    Ubuntu搭建flask服务器, 部署sklearn 机器学习模型
    Jupyter-notebook 显示图片的两种方法
    Linux多版本opencv指定 & CMake中 find_package()的原理解析
    使用C++调用pytorch模型(Linux)
    Arch / Manjaro Linux下 Opencv 编译 配置 查看
    获取路径下所有特定格式文件列表
    Pycharm相对路径
    opencv 与操作 bitwise_and
    vim学习
    opencv 旋转 点旋转 以及 逆旋转
  • 原文地址:https://www.cnblogs.com/bainianminguo/p/8001471.html
Copyright © 2011-2022 走看看