zoukankan      html  css  js  c++  java
  • 正则表达式学习笔记

    字符:

    .   匹配除换行符外所有的字符

    w 匹配字母或 数字或 下划线或汉子  大写的相反

    d 匹配数字  大写的相反

    s 匹配空格  大写的相反

    ^ 匹配字符串的开头

    $  匹配字符串的末尾

    次数:

    *  0-多次

    + 1到多次

    ? 0或1次

    {n} 重复n此

    {n,} 重复n到更多次

    {n-p} 重复n-p次

    match    匹配开头 匹配成功 返回一个 不成功 返回None

    无分组  

    origin = "hello alex bcd abcd lge acd 19"
    n = re.match('w+',origin)
    print(n.group())

    有分组

    origin = "hello alex bcd abcd lge acd 19"
    n = re.match('h(w+).*(?P<n1>d+)',origin)
    print(n.groups())
    print(n.groupdict())

    search   浏览全局 匹配第一个 没有返回None

    无分组

    有分组 同match

    findall  匹配全局  获取非重复的匹配列表 重复则返回最后一个 匹配规则有一个组 则以字符串形式返回组里面匹配的内容 如果多个组 以列表形式返回

    ret = '451alex12564 hej'
    r = re.findall('d+',ret)
    print(r)
    origin = "hello alex bcd abcd lge acd 19"
    r = re.findall("a((w*)c)(d)", origin)
    print(r)
    n = re.findall('dwd','a2b3c4d5')
    l = re.findall('d+wd+','a2b3c4d5')
    s = re.findall('d+wd+','a2345b6543')
    print(r)
    print(n)
    print(l)
    print(s)
  • 相关阅读:
    A 【NOIP2012 day2】疫情控制
    Leetcode(886)-可能的二分法
    判断链表是否有环
    如何判断图的连通
    图的DFS与BFS
    struct 和 class的区别
    最小生成树-kruskal算法
    Leetcode(712)-账户合并
    全局最小割
    Leetcode(29)-两数相除
  • 原文地址:https://www.cnblogs.com/koushuige/p/7853654.html
Copyright © 2011-2022 走看看