【Python学习】Python学习21- 正则表达式(1)

主图==========

目录

【Python学习】Python学习21- 正则表达式(1)

  • 前言
  • re.match函数
    • 实例
  • re.search方法
  • re.match与re.search的区别
  • 参考


文章所属专区 Python学习


前言

本章节主要说明Python的正则表达式。
正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。

re.match函数

re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match() 就返回 none。
语法:

re.match(pattern, string, flags=0)

参数说明:
在这里插入图片描述
正则表达式可选标志
在这里插入图片描述

实例

#!/usr/bin/python
import reline = "Cats are smarter than dogs"matchObj = re.match( r'(.*) are (.*?) .*', line, re.M|re.I)if matchObj:print "matchObj.group() : ", matchObj.group()print "matchObj.group(1) : ", matchObj.group(1)print "matchObj.group(2) : ", matchObj.group(2)
else:print "No match!!"

多行匹配,大小写不敏感,“”are“”的语句

re.search方法

re.search 扫描整个字符串并返回第一个成功的匹配。
语法:
re.search(pattern, string, flags=0)
参数说明:
在这里插入图片描述
实例:

#!/usr/bin/python
import reline = "Cats are smarter than dogs";searchObj = re.search( r'(.*) are (.*?) .*', line, re.M|re.I)if searchObj:print "searchObj.group() : ", searchObj.group()print "searchObj.group(1) : ", searchObj.group(1)print "searchObj.group(2) : ", searchObj.group(2)
else:print "Nothing found!!"

在这里插入图片描述

re.match与re.search的区别

re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。

#!/usr/bin/python
import reline = "Cats are smarter than dogs";matchObj = re.match( r'dogs', line, re.M|re.I)
if matchObj:print "match --> matchObj.group() : ", matchObj.group()
else:print "No match!!"matchObj = re.search( r'dogs', line, re.M|re.I)
if matchObj:print "search --> searchObj.group() : ", matchObj.group()
else:print "No match!!"

返回:
No match!! #match在字符串开始没有匹配到字符 返回false
search --> searchObj.group() : dogs #search在整个字符串匹配到了字符,返回true

参考

菜鸟教程-Python

给个三连吧 谢谢谢谢谢谢了
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/421528.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

课题学习(十九)----Allan方差:陀螺仪噪声分析

一、介绍 Allan方差是一种分析时域数据序列的方法,用于测量振荡器的频率稳定性。该方法还可用于确定系统中作为平均时间函数的本征噪声。该方法易于计算和理解,是目前最流行的识别和量化惯性传感器数据中存在的不同噪声项的方法之一。该方法的结果与适用…

Unity 抽象工厂模式(实例详解)

文章目录 简介实例1实例2 简介 抽象工厂模式是一种创建型设计模式,它提供了一种方式来封装一组相关或相互依赖对象的创建过程,而无需指定具体类。这种模式常用于系统中有多组相关产品族,且客户端需要使用不同产品族中的对象时。 在Unity中&a…

Go使用记忆化搜索的套路【以20240121力扣每日一题为例】

题目 分析 这道题很明显记忆化搜索,用py很容易写出来 Python class Solution:def splitArray(self, nums: List[int], k: int) -> int:n len(nums)# 寻找分割子数组中和的最小的最大值s [0]for num in nums:s.append(s[-1] num)#print(s)cachedef dfs(cur,…

140:leaflet加载here地图(v2软件多种形式)

第140个 点击查看专栏目录 本示例介绍如何在vue+leaflet中添加HERE地图(v2版本的软件),并且含多种的表现形式。包括地图类型,文字标记的设置、语言的选择、PPI的设定。 v3版本和v2版本有很大的区别,关键是引用方法上,请参考文章尾部的API链接。 直接复制下面的 vue+leaf…

chisel入门初步1——基4的booth编码的单周期有符号乘法器实现

基4的booth编码乘法器原理说明 基2的booth编码 本质来说就是一个裂项重组,乘法器最重要的设计是改变部分积的数量,另外在考虑有符号数的情况下,最高位符号位有特别的意义。 (注:部分积是指需要最后一起加和的所有部分…

[足式机器人]Part2 Dr. CAN学习笔记- 最优控制Optimal Control Ch07-3 线性二次型调节器(LQR)

本文仅供学习使用 本文参考: B站:DR_CAN Dr. CAN学习笔记 - 最优控制Optimal Control Ch07-3 线性二次型调节器(LQR) 1. 数学推导2. 案例反洗与代码详解 1. 数学推导 2. 案例反洗与代码详解

深度了解六西格玛培训:用MINITAB软件优化数据处理和项目管理——张驰咨询

在追求卓越的道路上,六西格玛培训不仅是一种管理哲学,更是一套科学精细的工具箱。它起源于摩托罗拉的制造车间,但如今它的精粹已经应用到各个行业,无论规模大小,都在追求完美的产品和服务质量。 在张驰咨询&#xff0…

知识图谱的演进

目录 前言1 Memex:信息存储的雏形2 超文本和Web:链接的崛起3 Semantic Web:从文本链接到数据链接4 Linked Big Data:规范化的语义表示5 谷歌的知识图谱搜索引擎6 多种语义网/知识图谱项目结语 前言 随着人工智能和互联网的飞速发…

到店商详架构变迁

一、项目背景 到店商详是平台为京东到店业务提供的专属商详页面,将传统电商购物路径打造成以LBS门店属性的本地生活服务交易链路。 二、架构变迁 1、 主站商详扩展点 **优点:**到店侧仅关注业务,无需过度关注服务部署、性能优化等。 **缺…

一文学会Python中的while循环

Python 中的 while 循环是一种用于重复执行代码块的控制结构,它会根据条件的真假来决定是否继续执行循环。本文将深入探讨 Python 中的 while 循环,包括其基本语法、应用场景以及一些示例代码。 基本语法 在 Python 中,while 循环的基本语法…

持续集成工具Jenkins的使用之配置篇(二)

上一篇 :持续集成工具Jenkins的安装配置之安装篇(一)-CSDN博客 接上文 三.Jenkins配置 Jenkins配置主要是针对创建构建任务前做的一些基本配置,这些配置有些是必须的,有些是可以帮我们提高效率的,总之都是Jenkins管理员都要会的…

初识人工智能,一文读懂机器学习之逻辑回归知识文集(1)

文章目录 🏆 初识人工智能(机器学习之逻辑回归)🔎 一、 机器学习之逻辑回归知识文集(1)🍁 01. 什么是逻辑回归?它与线性回归的区别是什么?🍁 02. 逻辑回归的应用场景有哪些?🍁 03. 逻…