python 正则表达式

1.引入案例代码演示:#需求:判断一个手机号码是否合法.""import re #regular Expession #使用正则表达式实现上面的需求# 需求:封装一个函数,判断手机号是否合法?def checkPhone(phone): if len(phone) != 11: return "手机号码长度不符合要求!" if phone[0] != "1": return "手机号码不是1开头!" if not p
摘要由CSDN通过智能技术生成

1.引入案例

代码演示:

#需求:判断一个手机号码是否合法.
""
import  re     #regular  Expession   
#使用正则表达式实现上面的需求
# 需求:封装一个函数,判断手机号是否合法?
def checkPhone(phone):
    if len(phone) != 11:
        return "手机号码长度不符合要求!"
    if phone[0] != "1":
        return "手机号码不是1开头!"
    if not phone.isdigit():
        return "手机号码不是全部是数字"
    return "手机号码格式正确"
# print(checkPhone("28617767023"))


# 正则验证手机号码是否正确
import re
print(re.search("^1\d{10}$","28617767024"))

2.概述

正则表达式【Regular Expression】,简写为regex,RE,使用单个字符串来描述一系列具有特殊格式的字符串

功能:

​ a.搜索

​ b.替换

​ c.匹配

使用情景:

​ 爬虫

​ 验证手机号,验证邮箱,密码【用户名】

常用的函数

# 1.re.match()   匹配字符串是否以指定的正则内容开头,匹配成功返回对象, 匹配失败返回None
'''
第一个参数: 正则表达式
第二个参数: 要验证的字符串
第三个参数: 可选参数,正则表达式修饰符
'''
# \d: 0-9
# +:表示出现1次或者多次
print(re.match("\d+","12345esd"))  # <re.Match object; span=(0, 5), match='12345'>
print(re.match("\d+","as12345esd"))  # None


'''
print(re.findall("\d+","as123kjh765lgf890"))

3.使用规则

3.1匹配单个数字或者字符

代码演示:

import  re
"""
----------匹配单个字符与数字---------
.                匹配除换行符以外的任意字符
[0123456789]     []是字符集合,表示匹配方括号中所包含的任意一个字符
[good]           匹配good中任意一个字符
[a-z]            匹配任意小写字母
[A-Z]            匹配任意大写字母
[0-9]            匹配任意数字,类似[0123456789]
[0-9a-zA-Z]      匹配任意的数字和字母
[0-9a-zA-Z_]     匹配任意的数字、字母和下划线
[^good]          匹配除了good这几个字母以外的所有字符,中括号里的^称为脱字符,表示不匹配集合中的字符
[^0-9]           匹配所有的非数字字符
\d               匹配数字,效果同[0-9]
\D               匹配非数字字符,效果同[^0-9]
\w               匹配数字,字母和下划线,效果同[0-9a-zA-Z_]
\W               匹配非数字,字母和下划线,效果同[^0-9a-zA-Z_]
\s               匹配任意的空白符(空格,回车,换行,制表,换页),效果同[ \r\n\t\f]
\S               匹配任意的非空白符,效果同[^ \f\n\r\t]
"""
#[]  :
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值