栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

正则表达式

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

正则表达式

正则表达式是一门独立的语言,跟其他的编程语言没有任何关系!

如果想在python代码中使用正则,需要借助于内置模块re

什么是正则表达式?

        利用一些特殊符号的组合去字符串中筛选出符合条件的数据

"""
1.必须是11位
2.必须是纯数字
3.必须符合手机号的排布  15 16 18 19

普通代码
"""
 phone = input('请输入你的手机号>>>:').strip()
 if len(phone) == 11:
     if phone.isdigit():
         if phone.startswith('15') or phone.startswith('16') or phone.startswith('18') or 
 phone.startswith('19'):
             print('手机号正确')
         else:
             print('格式不对')
     else:
         print('手机号必须是纯数字')
 else:
     print('必须是11位')



"""正则表达式代码如下"""

import re
phone_number = input('please input your phone number : ')
if re.match('^(13|14|15|18)[0-9]{9}$',phone_number):
        print('是合法的手机号码')
else:
        print('不是合法的手机号码')
字符组
#特征是使用中括号括起来的,字符串默认只能单个单个字符匹配

[0123456789]  #匹配0-9之间任何一个数字

    可以简写为 [0-9]
[a-z]    匹配小写字母a-z其中任意一个字母

[A-Z]    匹配大写字母A-Z其中任意一个字母

[a-zA-Z0-9]    匹配所有的数字 小写 大写
特殊符号
特殊符号默认也只能单个单个字符匹配

.    匹配出换行符以外的任意字符

d    匹配数字

^    匹配字符串的开始

$    匹配字符串的结尾

"""^与$组合使用可以精准限制要查找的数据"""

a|b    匹配字符a或字符b

()    匹配括号内的表达式 也表示一个组(不会影响正则表达式的匹配单纯的分组而已)

[...]    匹配字符组中的字符

[^...]    匹配除了字符组中字符的所有字符
量词
1、表达式在没有量词修饰的情况下 都是单个单个匹配

2、量词必须结合(字符串、特殊符号等)一起使用 不能单独出现

3、量词只能影响前面的一个表达式(ab+ 只能影响到b)

*    重复0次或更多次

+    重复一次或更多次

?    重复0次或1次

{n}    重复n次

{n,}    重复n次或更多次

{n,m}    重复n到m次


"""正则表达式中的量词默认都是 贪婪匹配 """
贪婪匹配与非贪婪匹配
# 带匹配的字符串

    

# 正则表达式
	
    <.*>  '''默认贪婪匹配 尽可能多的匹'''

# 将贪婪变为非贪婪 只需要在量词的后面加问号即可
	
    <.*?> '''非贪婪匹配 尽可能少的匹  结束条件有左右两边决定'''

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/588977.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号