Python全系列 教程
3567个小节阅读:5930.4k
目录
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
能够匹配各种各样的字符集合是正则表达式可以做到的第一件事。但功能不算强大!
强大之处在于可以指定正则的某部分必须重复一定的次数
代码 | 功能 |
---|---|
* | 匹配前一个字符出现0次或者无限次,即可有可无 |
+ | 匹配前一个字符出现1次或者无限次,即至少有1次 |
? | 匹配前一个字符出现1次或者0次,即要么有1次,要么没有 |
{m} | 匹配前一个字符出现m次 |
{m,n} | 匹配前一个字符出现从m到n次 |
需求:匹配出一个字符串第一个字母为大小字符,后面都是小写字母并且这些小写字母可 有可无
xxxxxxxxxx
import re
ret = re.match("[A-Z][a-z]*","M")
print(ret.group())
ret = re.match("[A-Z][a-z]*","MnnM")
print(ret.group())
ret = re.match("[A-Z][a-z]*","Aabcdef")
print(ret.group())
运行结果:
xxxxxxxxxx
M
Mnn
Aabcdef
需求:匹配一个字符串,第一个字符是t,最后一个字符串是o,中间至少有一个字符
xxxxxxxxxx
import re
match_obj = re.match("py.+n", "python")
if match_obj:
print(match_obj.group())
else:
print("匹配失败")
运行结果:
xxxxxxxxxx
python
需求:匹配出这样的数据,但是https 这个s可能有,也可能是http 这个s没有
xxxxxxxxxx
import re
match_obj = re.match("https?", "http")
if match_obj:
print(match_obj.group())
else:
print("匹配失败")
运行结果:
xxxxxxxxxx
http
需求:匹配出,8到20位的密码,可以是大小写英文字母、数字、下划线
xxxxxxxxxx
import re
ret = re.match("[a-zA-Z0-9_]{6}","12a3g45678")
print(ret.group())
ret = re.match("[a-zA-Z0-9_]{8,20}","1a2b3c4d5e6f7g8h9ijklmn")
print(ret.group())
运行结果:
xxxxxxxxxx
12a3g4
1a2b3c4d5e6f7g8h9ijk
实时效果反馈
1. 匹配字符中+
的作用是:
A 表示匹配前一个字符出现0次或者无限次
B 表示匹配前一个字符出现1次或者无限次
C 表示匹配前一个字符出现1次或者0次
D 表示匹配前一个字符出现1次
2. 匹配字符中*
的作用是:
A 表示匹配前一个字符出现0次或者无限次
B 表示匹配前一个字符出现1次或者无限次
C 表示匹配前一个字符出现1次或者0次
D 表示匹配前一个字符出现1次
答案
1=>B 2=>A