Python编程--正则基础(一)

简介: Python编程--正则基础(一)

一、正则基础
1、为什么使用正则

  • 需求
    判断一个字符串是否是手机号
  • 解决
    编写一个函数,给函数一个字符串,如果是手机号则返回True,否则返回False

代码
def isPhone(phone):

# 长度为11
    # 全部都是数字字符
    # 以1开头
    pass

if isPhone("13812345678"):
    print("是手机号")
else:
    print("不是手机号")

注意
如果使用正则会让这个问题变得简单
2、正则与re模块简介
概述: 正则表达式,又称规则表达式

正则表达式(regular expression)描述了一种字符串匹配的模式(pattern)

正则匹配是一个 模糊的匹配(不是精确匹配)

re:python自1.5版本开始增加了re模块,该模块提供了perl风格的正则表达式模式,re模块是python语言拥有了所有正则表达式的功能

如下四个方法经常使用

  • match()
  • search()
  • findall()
  • finditer()

二、正则表达式
1、匹配单个字符与数字
image.png
image.png
2、匹配锚字符
锚字符:用来判定是否按照规定开始或者结尾
image.png
image.png

3、限定符
限定符用来指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。有 * 或 + 或 ? 或 {n} 或 {n,} 或 {n,m} 共6种。
image.png

三、re模块中常用函数

  • 通用flags(修正符)
  • 通用函数

  • 获取匹配结果

  • 使用group()方法 获取到匹配的值

groups() 返回一个包含所有小组字符串的元组(也就是自存储的值),从 1 到 所含的小组号。
1、match()函数

  • 原型
def match(pattern, string, flags=0)
  • 功能

匹配成功返回 匹配的对象
匹配失败 返回 None

  • 获取匹配结果

使用group()方法 获取到匹配的值
groups() 返回一个包含所有小组字符串的元组,从 1 到 所含的小组号。
注意:从第一位开始匹配 只匹配一次
参数
image.png
代码

import re

res = re.match('\d{2}','123')
print(res.group())

#给当前匹配到的结果起别名
s = '3G4HFD567'
re.match("(?P<value>\d+)",s)
print(x.group(0))
print(x.group('value'))

2、searce()函数
原型

def search(pattern, string, flags=0)
  • 功能

扫描整个字符串string,并返回第一个pattern模式成功的匹配
匹配失败 返回 None

  • 参数

image.png

  • 注意:

只要字符串包含就可以
只匹配一次

  • 示例
import re

res = re.search('[a-z]', '131A3ab889s')
print(res)
print(res.group()
  • 注意

与search的区别

  • 相同点:

都只匹配一次

  • 不同点:
  1. search是在要匹配的字符串中 包含正则表达式的内容就可以
  2. match 必须第一位就开始匹配 否则匹配失败

接下文 Python编程--正则基础(二)https://developer.aliyun.com/article/1618835

相关文章
|
1天前
|
存储 数据可视化 Python
Python编程中的数据可视化技术
在数据驱动的世界中,将复杂的数据集转换为易于理解的视觉表示形式至关重要。本文将深入探讨如何使用Python进行数据可视化,包括选择合适的库、处理数据和设计有效的图表。我们将一起学习如何让数据讲故事,并确保你的信息传达清晰且有影响力。
|
1天前
|
网络协议 IDE iOS开发
Python编程---简单的聊天工具
Python编程---简单的聊天工具
11 2
|
1天前
|
小程序 IDE 开发工具
Python编程--个人信息修改小程序
Python编程--个人信息修改小程序
10 2
|
1天前
|
存储 uml iOS开发
Python编程:《外星人入侵》(一)
Python编程:《外星人入侵》(一)
|
1天前
|
IDE 开发工具 Python
Python扑克游戏编程---摸大点
Python扑克游戏编程---摸大点
|
1天前
|
Python
Python编程--解压缩文件
Python编程--解压缩文件
|
1天前
|
IDE 开发工具 数据安全/隐私保护
Python编程--实现用户注册信息写入excel文件
Python编程--实现用户注册信息写入excel文件
|
1天前
|
Python
Python编程---双色球选购程序
Python编程---双色球选购程序
|
1天前
|
存储 安全 网络安全
Python编程--使用PyPDF解析PDF文件中的元数据
Python编程--使用PyPDF解析PDF文件中的元数据
|
1天前
|
Python
Python编程--使用NMAP端口扫描
Python编程--使用NMAP端口扫描