• Python-正则表达式使用


    一、正则表达式概述

    正则表达式是一种用于描述字符串模式的语言。它由一系列字符组成,可以用来匹配和操作文本。正则表达式的特点是使用特定的符号来表示模式,这些符号包括元字符、字符类、重复次数等。

    二、正则表达式元字符

    正则表达式的元字符是用来描述模式的特殊字符。以下是常用的元字符:
    .:匹配任意字符(除了换行符)。
    *:匹配前一个字符0次或多次。
    +:匹配前一个字符1次或多次。
    ?:匹配前一个字符0次或1次。
    {n}:匹配前一个字符恰好n次。
    {n,}:匹配前一个字符至少n次。
    {n,m}:匹配前一个字符至少n次,但不超过m次。\d:匹配任意数字(等价于[0-9])。
    \D:匹配任意非数字字符(等价于[^0-9])。
    \s:匹配任意空白字符(等价于[\f\n\r\t\v])。
    \S:匹配任意非空白字符(等价于[^\f\n\r\t\v])。\w:匹配任意字母数字字符(等价于[a-zA-Z0-9_])。
    \W:匹配任意非字母数字字符(等价于[^a-zA-Z0-9_])。

    三、正则表达式示例

    下面是一些正则表达式的示例:
    匹配整数:\d+
    匹配浮点数:\d+.\d+
    匹配邮箱地址:[\w.-]+@[\w.-]+.\w+
    匹配日期(yyyy-mm-dd):\d{4}-\d{2}-\d{2}
    匹配手机号码:1[3-9]\d{9}
    匹配HTML标签:<[^>]+>
    匹配单词边界:\b\w+\b
    匹配重复的单词:\b\w+\b.*\b\w+\b

    四、Python中使用正则表达式的方法

    在Python中,我们可以使用re模块来处理正则表达式。
    下面是一些常用的方法:
    re.match(pattern, string):从字符串的起始位置匹配正则表达式。
    re.search(pattern, string):在整个字符串中搜索匹配正则表达式。
    re.findall(pattern, string):查找字符串中所有匹配正则表达式的子串。
    re.sub(pattern, repl, string):在字符串中替换匹配正则表达式的子串。
    re.split(pattern, string):根据正则表达式分割字符串。
    re.error:处理正则表达式错误。

    五、使用案例

    import re
    # 定义要匹配的字符串
    text = "Hello, my name is John Doe. I am a Python developer."
    # 使用正则表达式查找字符串中的单词
    pattern = r"\b\w+\b"
    matches = re.findall(pattern, text)
    # 输出匹配结果
    print(matches)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    这个案例中,我们首先定义了一个要匹配的字符串text。然后,我们使用正则表达式模式r"\b\w+\b"来查找字符串中的单词。这个模式使用\b表示单词边界,\w+表示匹配一个或多个字母数字字符。最后,我们使用re.findall方法查找所有匹配的子串,并将结果存储在matches变量中。最后,我们输出匹配结果。
    输出结果
    ['Hello', 'name', 'John', 'Doe', 'I', 'am', 'Python', 'developer']

  • 相关阅读:
    支付宝小程序授权/获取用户信息
    代码优雅之道——Springboot统一返回结果
    Linux 启动流程及相关知识
    iOS ijkplayer 硬解H265(hevc)4k视频问题解决
    kubernetes搭建笔记(一)——安装kubeadm
    操作系统【OS】多线程模型
    什么是大票零担?ZETA如何实现大票零担货物追踪可视化?
    【蓝桥杯国赛真题23】Scratch恐龙跑酷 第十三届蓝桥杯 图形化编程scratch国赛真题和答案讲解
    我的前端开发技巧
    关于动态注册组件的问题
  • 原文地址:https://blog.csdn.net/m0_46778548/article/details/134482173