• re模块


    1.w匹配字母数字下划线
    2.W匹配非字母数字下划线
    3.s匹配任意空字符, , , ,空格
    4.S匹配任意非空字符
    5.d匹配0-9数字
    6.D匹配非数字
    7."^"从头开始匹配
    8."$"从尾开始匹配
    9.点(.)匹配任意1个非 字符,模式设置为DOTALL时,可以匹配任意一个字符
    10.?:表示左边的字符可以出现0次或1次
    11.:表示左边的字符可以出现任意次
    12. .
    匹配任意数目字符,匹配任意字符,贪婪匹配
    13. .*? 非贪婪匹配
    14.{m,n}:表示左边的那一个字符出现m到n次
    15.()分组,只保留括号里的东西
    16.[]括号内可以放任意字符,一个中括号表示一个字符,这一个字符来自中括号中定义的
    [0-9a-zA-Z]
    "^"出现在中扩号中时表示取反
    当-需要被当做普通字符匹配时,而不是表示从哪到哪,只能放到最左边或最右边
    17."|"管道符 表示或者
    (a|b)表示a或者b,括号会只保留其中的内容,使用(?:a|b),取消括号的保留功能

    re.search():找到匹配成功的第一个,返回的是一个对象,若需要返回结果,加.group()显示

    re.match():功能与search基本相同,但是是从头找,头没找到就没找到

    re.split()

    import re
    info = "a :cd/e"
    pattern = "[:/]" # / 转义两个 /
    res = re.split(pattern,info)
    print(res)
    ['a ', 'c', 'd', 'e']

    s="1-2((60-30+(-40/5)(9-25/3+7/399/42998+10568/14))-(-43)/(16-32))"
    找出最内侧括号
    pattern ="([^()]+)"
    a = re.findall(pattern,s)

  • 相关阅读:
    语法专题:错误处理机制
    语法专题:数据类型的转换
    运算符:其他运算符,运算顺序
    运算符:二进制位运算符
    运算符:布尔运算符
    运算符:比较运算符
    day09 继承、super、this、抽象类
    day08 String类、Static关键字、Arrays类、Math类
    day06 Scanner类、Random类、匿名对象、ArrayList类
    day05 encapsulation
  • 原文地址:https://www.cnblogs.com/robert-zhou/p/10040907.html
Copyright © 2020-2023  润新知