(2018-04-16.Python从Zero到One)五、正则表达式__5.1.5表示数量

上一篇文章为:→5.1.4原始字符串

表示数量

匹配多个字符的相关格式

字符 功能
* 匹配前一个字符出现0次或者无限次,即可有可无
+ 匹配前一个字符出现1次或者无限次,即至少有1次
? 匹配前一个字符出现1次或者0次,即要么有1次,要么没有
{m} 匹配前一个字符出现m次
{m,} 匹配前一个字符至少出现m次
{m,n} 匹配前一个字符出现从m到n次

示例1:*

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

#coding=utf-8
import re

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

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

运行结果:

day21_正则表达式-01.png

示例2:+

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

#coding=utf-8
import re

ret = re.match("[a-zA-Z_]+[\w_]*","name1")
ret.group()

ret = re.match("[a-zA-Z_]+[\w_]*","_name")
ret.group()

ret = re.match("[a-zA-Z_]+[\w_]*","2_name")
ret.group()

运行结果:

[图片上传失败...(image-ffc8ce-1523892353015)]

示例3:?

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

#coding=utf-8
import re

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

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

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

运行结果:

[图片上传失败...(image-bcfefc-1523892353015)]

示例4:{m}

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

#coding=utf-8
import re

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

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

运行结果:

day21_正则表达式-02.png

练一练

题目1:匹配出163的邮箱地址,且@符号之前有4到20位,例如hello@163.com


下一篇文章为:→5.1.6表示边界
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 正则表达式到底是什么东西?字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等...
    狮子挽歌阅读 6,511评论 0 9
  • 正则表达式 1. 正则表达式概述 正则表达式,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语...
    PythonMaO阅读 5,046评论 0 1
  • 你好,欢迎收听“好好学习”平台的读书音频栏目“读好书”。今天为你解读的是《掌控:如何在人际交往中取得主导权》。这本...
    太阳姐姐阅读 5,865评论 4 8
  • 【当科学家使用上帝这个词时,他们通常指的是秩序上帝。例如,爱因斯坦幼年时最重要的一次天启,发生在他读他的第一批关于...
    心理学工作者阅读 3,294评论 0 0

友情链接更多精彩内容