一篇文章带你了解python正则表达式的正确用法

 更新时间:2021年08月25日 15:02:23   作者:季布,  
这篇文章主要介绍了Python中正则表达式的详细教程,正则表达式是Python学习进阶当中的重要内容,需要的朋友可以参考下

正则表达式的介绍

1)在实际开发过程中经常会有查找符合某些复杂规则的字符串的需要,比如:邮箱、手机号码等,这时候想匹配或者查找符合某些规则的字符串就可以使用正则表达式了。

2)正则表达式就是记录文本规则的代码

re模块

在Python中需要通过正则表达式对字符串进行匹配的时候,可以使用一个 re 模块

# 导入re模块
import re
# 使用match方法进行匹配操作
result = re.match(正则表达式,要匹配的字符串)
# 如果上一步匹配到数据的话,可以使用group方法来提取数据
result.group()

# 导入re模块
import re

# 使用match方法进行匹配操作
result = re.match("test","test.cn")
# 获取匹配结果
info = result.group()
print(info)

结果:
test

re.match() 根据正则表达式从头开始匹配字符串数据如果第一个匹配不成功就会报错

匹配单个字符

在这里插入图片描述

1.匹配任意一个字符

# 匹配任意一个字符
import re

ret = re.match(".","x")
print(ret.group())

ret = re.match("t.o","too")
print(ret.group())

ret = re.match("o.e","one")
print(ret.group())

运行结果:
x
too
one

2.匹配[ ]中列举的字符

import re

ret = re.match("[hH]","hello Python")
print(ret.group())
ret = re.match("[hH]","Hello Python")
print(ret.group())

运行结果:
h
H

3.\d匹配数字,即0-9

import re

ret = re.match("神州\d号","神州6号")
print(ret.group())

运行结果:
神州6号

4.\D匹配非数字,即不是数字

non_obj = re.match("\D", "s")
print(non_obj .group())


运行结果:
s

5.\s匹配空白,即 空格,tab键

match_obj = re.match("hello\sworld", "hello world")
print(match_obj .group())

运行结果:
hello world

6.\S匹配非空白

match_obj = re.match("hello\Sworld", "hello&world")
result = match_obj.group()
print(result)

运行结果:
hello&world

7.\w匹配非特殊字符,即a-z、A-Z、0-9、_、汉字

match_obj = re.match("\w", "A")
result = match_obj.group()
print(result)

运行结果:
A

8.\W匹配特殊字符,即非字母、非数字、非汉字

match_obj = re.match("\W", "&")
result = match_obj.group()
print(result)

运行结果:
&

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • python3实现ftp服务功能(客户端)

    python3实现ftp服务功能(客户端)

    这篇文章主要为大家详细介绍了python3实现ftp服务功能,客户端的相应代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • 解决Python中pandas读取*.csv文件出现编码问题

    解决Python中pandas读取*.csv文件出现编码问题

    很多朋友在使用Python中pandas读取csv文件时,出现编码格式问题,接下来通过本文给大家分享解决Python中pandas读取*.csv文件出现编码问题,需要的朋友可以参考下
    2019-07-07
  • Python如何将list中的string转换为int

    Python如何将list中的string转换为int

    这篇文章主要介绍了Python如何将list中的string转换为int,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • Python解析JSON数据的方法简单例子

    Python解析JSON数据的方法简单例子

    这篇文章主要给大家介绍了关于Python解析JSON数据的方法,解析JSON文件是Python中非常常见的操作,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • 如何从Python 程序中运行 PowerShell 脚本

    如何从Python 程序中运行 PowerShell 脚本

    Windows PowerShell 由数十个内置 cmdlet 组成,它们提供了丰富的功能集,本文将重点讨论从 Python 代码执行 PowerShell 逻辑,感兴趣的朋友跟随小编一起看看吧
    2023-10-10
  • Python 强大的信号库 blinker 入门详细教程

    Python 强大的信号库 blinker 入门详细教程

    这篇文章主要介绍了Python 强大的信号库 blinker 入门教程,信号的特点就是发送端通知订阅者发生了什么,使用信号分为 3 步:定义信号,监听信号,发送信号,需要的朋友可以参考下
    2022-02-02
  • python调用tcpdump抓包过滤的方法

    python调用tcpdump抓包过滤的方法

    这篇文章主要为大家详细介绍了python调用tcpdump抓包过滤的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • 详解python opencv、scikit-image和PIL图像处理库比较

    详解python opencv、scikit-image和PIL图像处理库比较

    这篇文章主要介绍了详解python opencv、scikit-image和PIL图像处理库比较,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Pandas高级教程之Pandas中的GroupBy操作

    Pandas高级教程之Pandas中的GroupBy操作

    通常来说groupby操作可以分为三部分:分割数据,应用变换和和合并数据,本文将会详细讲解Pandas中的groupby操作,感兴趣的朋友一起看看吧
    2021-07-07
  • Keras 使用 Lambda层详解

    Keras 使用 Lambda层详解

    这篇文章主要介绍了Keras 使用 Lambda层详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06

最新评论