一篇文章带你了解python正则表达式的正确用法
作者:季布, 发布时间:2023-01-05 19:20:30
标签: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)
运行结果:
&
来源:https://blog.csdn.net/weixin_47906106/article/details/119899309


猜你喜欢
- 你是一位交互设计师吗?告诉我,你具体做些什么?我是做网站设计的?听起来不够专业。我是做网页设计的,听起来……你们是做界面的……恩,好吧,我勉
- 如下代码可以计算输入的两张图像的结构相似度(SSIM),结果与matlab计算结果一致// An highlighted blockimpo
- 只想回答一个问题: 当编译器要读取obj.field时, 发生了什么?看似简单的属性访问, 其过程还蛮曲折的. 总共有以下几个step: 1
- 如下所示:#!/usr/bin/python# -*- coding: UTF-8 -*- import osimport shutilde
- 一、下载1、官网下载2、某度网盘下载链接: https://pan.baidu.com/s/1BgbZH-aFaJ1nwm2PpDeOSQ?
- 问题背景:本来想写一个脚本来处理硬盘里的文件,并进行分类处理,但是发现一个问题,使用python内置os模块里的方法出现一些问题,具体的见示
- 蓝色混迹多年,偷师学艺不少,这次花了2天时间写了点东西发出来送给需要的吧。先放个图片,我改下代码。 重构完成 IE 6
- 本文实例为大家分享了python批量处理图片的具体代码,供大家参考,具体内容如下公司的一个项目要求把所有4096x4096的图片全部转化成2
- golang这个语言用起来和java、 c#之类语言差不多,和c/c++差别比较大,有自动管理内存机制,省心省力。然而,如果写golang真
- 前言每个人写脚本时的格式都会有所不同,有的会注明脚本本身的一些信息,有的则开门见山,这在小团队里其实没什么,基本别人做什么你也都知道,但如果
- 双指数函数待拟合曲线为 y(x) = bepx + ceqximport matplotlib.pyplot as pltx = ([0.0
- 用Python基于Google Bard做一个交互式的聊天机器人之前已经通过浏览器试过了 Google Bard ,更多细节请看: Try
- 1.什么是labelpandas处理数据时,我们会经常看到dataframe结构使用loc, iloc, ix等方法。那么这些方法到底有啥区
- 好久没有更新过PyQt5相关的专题了,今天正好有空就做一个文件、文件内容检索的小工具。目的是为了能够很快的完成的在任意磁盘路径下找到我们需要
- 内容摘要: 首先来讲讲 Session 的好处,它可以用来记录客户端私有的
- 是在客户端确认还是在服务器端确认? <SCRIPT LANGUAGE="VBSc
- 这篇文章主要介绍了Python pickle模块实现对象序列化,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,
- 日志级别CRITICAL 50ERROR 40WARNING 30INFO 20DEBUG 10logging.basicConfig()函
- // 添加function col_add() { var selObj = $("#mySelect");&
- 最近再写openpose,它的网络结构是多阶段的网络,所以写网络的时候很想用列表的方式,但是直接使用列表不能将网络中相应的部分放入到cuda