admin 管理员组文章数量: 1184232
2024年3月13日发(作者:指针数组是不是二维数组)
*
:
匹配前一个字符出现
0
次或者无限次,即可有可无
+
:
匹配前一个字符出现
1
次或者无线次,即至少有
1
次
?
:
匹配前一个字符出现
1
次或者
0
次,即要么有
1
次,要么没有
{m}
:
匹配前一个字符出现
m
次
{m,n}
:
匹配前一个字符出现从
m
到
n
次
示例
1
:
*
需求:匹配出,一个字符串第一个字母为大小字符,后面都是小写字母并且这些小写字母可有可无
import re
#
注意是前一个字符
ret = ("[A-Z][a-z]*","M")
print(())
ret = ("[A-Z][a-z]*","AaBcDE")
print(())
ret = ("[A-Z][a-z]*","Aabcdef")
print(())
#
运行结果
M
Aa
Aabcdef
示例
2
:
+
需求:匹配出,变量名是否有效
'''
遇到问题没人解答?小编创建了一个
Python
学习交流
群:
778463939
寻找有志同道合的小伙伴,互帮互助
,
群里还有不错的视频学习教程和
电子书!
'''
import re
names = ["name1","_name","2_name","__name__"]
for i in names:
ret = ("[a-zA-Z_]+[w]*",i)
if ret:
print("
变量名
%s
符合要求
" % ())
else:
print("
变量名
%s
非法
" % i)
#
运行结果
变量名
name1
符合要求
变量名
_name
符合要求
变量名
2_name
非法
变量名
__name__
符合要求
示例
3
:
?
需求:匹配出
0
到
99
之间的数字
'''
遇到问题没人解答?小编创建了一个
Python
学习交流
群:
778463939
寻找有志同道合的小伙伴,互帮互助
,
群里还有不错的视频学习教程和
电子书!
'''
import re
ret = ("[1-9]?[0-9]","7")
print(())
ret = ("[1-9]?d","33")
print(())
ret = ("[1-9]?d","09")
print(())
#
运行结果
7
33
0 #
这个结果并不是想要的,利用
$
才能解决
示例
4
:
{m}
需求:匹配出,
8
到
20
位的密码,可以是大小写英文字母、数字、下划线
import re
ret = ("[a-zA-Z0-9_]{6}","123a3g45678")
print(())
ret = ("[[a-zA-Z0-9_]{8,20}","1ad3123456addfcasdef")
print(())
#
运行结果
123a3g
1ad3123456addfcasdef
版权声明:本文标题:Python正则表达式之字符串匹配多个字符 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1710306332a567121.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论