python正则表达式re.match()匹配多个字符方法的实现


Posted in Python onJanuary 27, 2021

1.  *表示匹配任意多个字符   \d*表示匹配任意多个数字字符

import re
 
text = "123h1ello world"
text1 = "123Hello world456"
text2 = "hello world"
 
res = re.match("\d*", text)  
res1 = re.match("\d*", text1)
res2 = re.match("\d*", text2)
 
print(res.group())
print(res1.group())
print(res2.group())

输出结果为

123
123

Process finished with exit code 0

示例2:*

需求:匹配出,一个字符串第一个字母为大小字符,后面都是小写字母并且这些小写字母可有可无

import re
#注意是前一个字符
ret = re.match("[A-Z][a-z]*","M")
print(ret.group())

ret = re.match("[A-Z][a-z]*","AaBcDE")
print(ret.group())

ret = re.match("[A-Z][a-z]*","Aabcdef")
print(ret.group())

#运行结果
M
Aa
Aabcdef

2.  +表示匹配1个或者多个任意字符   \w+表示匹配一个或多个字母,数字或下划线

import re
 
text = "he+llo world"
text1 = "Hello world456"
text2 = "+hello world"
 
res = re.match("\w+", text)
res1 = re.match("\w+", text1)
res2 = re.match("\w+", text2)
 
print(res.group())
print(res1.group())
print(res2)

输出结果为

he
Hello
None

Process finished with exit code 0

示例2:+

需求:匹配出,变量名是否有效

import re
names = ["name1","_name","2_name","__name__"]
for i in names:
  ret = re.match("[a-zA-Z_]+[\w]*",i)
  if ret:
    print("变量名 %s 符合要求" % ret.group())
  else:
    print("变量名 %s 非法" % i)

#运行结果
变量名 name1 符合要求
变量名 _name 符合要求
变量名 2_name 非法
变量名 __name__ 符合要求

3.  ?表示匹配0个或一个字符     \w?表示匹配0或1个字母,数字或下划线

import re
 
text = "he+llo world"
text1 = "Hello world456"
text2 = "+hello world"
 
res = re.match("\w?", text)
res1 = re.match("\w?", text1)
res2 = re.match("\w?", text2)
 
print(res.group())
print(res1.group())
print(res2.group())

输出结果为

h
H

Process finished with exit code 0

示例2:?

需求:匹配出0到99之间的数字

import re

ret = re.match("[1-9]?[0-9]","7")
print(ret.group())

ret = re.match("[1-9]?\d","33")
print(ret.group())

ret = re.match("[1-9]?\d","09")
print(ret.group())

#运行结果
7
33
0 # 这个结果并不是想要的,利用$才能解决

4.  {m}表示匹配m个字符    \d{11}表示匹配11个数字字符

import re
 
text = "he+llo world"
text1 = "Hello world456"
text2 = "hello world"
 
res = re.match("\w{2}", text)
res1 = re.match("\w{3}", text1)
res2 = re.match("\w{4}", text2)
 
print(res.group())
print(res1.group())
print(res2.group())

输出结果为

he
Hel
hell

Process finished with exit code 0

示例2:{m}
需求:匹配出,8到20位的密码,可以是大小写英文字母、数字、下划线

import re
ret = re.match("[a-zA-Z0-9_]{6}","123a3g45678")
print(ret.group())

ret = re.match("[[a-zA-Z0-9_]{8,20}","1ad3123456addfcasdef")
print(ret.group())

#运行结果
123a3g
1ad3123456addfcasdef

5.   {m,n}表示匹配m-n个字符   \w{2,4}表示匹配2-4个字符

import re
 
text = "hello world"
text1 = "Helloworld456"
text2 = "hello world"
 
res = re.match("\w{2,5}", text)
res1 = re.match("\w{6,8}", text1)
res2 = re.match("\w{20,25}", text2)
 
print(res.group())
print(res1.group())
print(res2)

hello
Hellowor
None

Process finished with exit code 0

到此这篇关于python正则表达式re.match()匹配多个字符方法的实现的文章就介绍到这了,更多相关python re.match()匹配字符内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python django集成cas验证系统
Jul 14 Python
解析Python中的二进制位运算符
May 13 Python
Python 类与元类的深度挖掘 II【经验】
May 06 Python
Python操作RabbitMQ服务器实现消息队列的路由功能
Jun 29 Python
Python中的变量和作用域详解
Jul 13 Python
Python搭建代理IP池实现接口设置与整体调度
Oct 27 Python
线程安全及Python中的GIL原理分析
Oct 29 Python
Python 使用 environs 库定义环境变量的方法
Feb 25 Python
Django {{ MEDIA_URL }}无法显示图片的解决方式
Apr 07 Python
使用keras时input_shape的维度表示问题说明
Jun 29 Python
利用Python将图片中扭曲矩形的复原
Sep 07 Python
Python 利用argparse模块实现脚本命令行参数解析
Dec 28 Python
python工具快速为音视频自动生成字幕(使用说明)
Jan 27 #Python
详解appium自动化测试工具(monitor、uiautomatorviewer)
Jan 27 #Python
Python利用socket模块开发简单的端口扫描工具的实现
Jan 27 #Python
Python爬虫实现selenium处理iframe作用域问题
Jan 27 #Python
python利用appium实现手机APP自动化的示例
Jan 26 #Python
python 基于opencv去除图片阴影
Jan 26 #Python
python中用ggplot绘制画图实例讲解
Jan 26 #Python
You might like
迅雷下载《中学科技》怀旧期刊下载
2021/02/27 无线电
php中将html中的br换行符转换为文本输入中的换行符
2013/03/26 PHP
PHP Global定义全局变量使用说明
2013/08/15 PHP
php找出指定范围内回文数且平方根也是回文数的方法
2015/03/23 PHP
Javascript 对象的解释
2008/11/24 Javascript
基于jQuery的弹出消息插件 DivAlert之旅(一)
2010/04/01 Javascript
jquery validate使用攻略 第四步
2010/07/01 Javascript
使用javascript做的一个随机点名程序
2014/02/13 Javascript
一个JavaScript操作元素定位元素的实例
2014/10/29 Javascript
JavaScript匿名函数用法分析
2015/02/13 Javascript
Angular使用ng-messages与PHP进行表单数据验证
2016/12/28 Javascript
bootstrap警告框使用方法解析
2017/01/13 Javascript
简单实现JavaScript弹幕效果
2020/08/27 Javascript
深入理解ES6中let和闭包
2018/02/22 Javascript
swiper在vue项目中loop循环轮播失效的解决方法
2018/09/15 Javascript
如何根据业务封装自己的功能组件
2019/04/19 Javascript
kafka调试中遇到Connection to node -1 could not be established. Broker may not be available.
2019/09/17 Javascript
vue中利用iscroll.js解决pc端滚动问题
2020/02/15 Javascript
如何基于jQuery实现五角星评分
2020/09/02 jQuery
python sqlobject(mysql)中文乱码解决方法
2008/11/14 Python
Python操作json数据的一个简单例子
2014/04/17 Python
python基础教程之序列详解
2014/08/29 Python
Mac下Supervisor进程监控管理工具的安装与配置
2014/12/16 Python
Python实现文件复制删除
2016/04/19 Python
利用Python如何生成随机密码
2016/04/20 Python
浅谈python元素如何去重,去重后如何保持原来元素的顺序不变
2020/02/28 Python
关于python 跨域处理方式详解
2020/03/28 Python
利用python实现平稳时间序列的建模方式
2020/06/03 Python
浅谈keras使用中val_acc和acc值不同步的思考
2020/06/18 Python
Wedgwood英国官方网站:英式精致骨瓷餐具、礼品与生活精品,源于1759年
2019/09/02 全球购物
信息工作经验交流材料
2014/05/28 职场文书
国际贸易专业求职信
2014/06/04 职场文书
艺术学院毕业生求职信
2014/07/09 职场文书
500字小学生检讨书
2015/02/19 职场文书
vue引入Excel表格插件的方法
2021/04/28 Vue.js
windows server2008 开启端口的实现方法
2022/06/25 Servers