首页 > 编程语言 >Python中的正则表达式教程

Python中的正则表达式教程

时间:2024-11-14 22:20:07浏览次数:3  
标签:字符 教程 匹配 编程语言 Python 正则表达式 斜杠

一、 正则表达式基础

1。1。概念介绍

正则表达式是用于处理字符串的强大工具,它并不是Python的一部分。

其他编程语言中也有正则表达式的概念,区别只在于不同的编程语言实现支持的语法数量不同。

它拥有自己独特的语法以及一个独立的处理引擎,在提供了正则表达式的语言里,正则表达式的语法都是一样的。

下图展示了使用正则表达式进行匹配的流程:

正则表达式的大致匹配过程是:

1.依次拿出表达式和文本中的字符比较,

2。如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。

3。如果表达式中有量词或边界,这个过程会稍微有一些不同。

下图列出了Python支持的正则表达式元字符和语法:   

1.2. 数量词的贪婪模式与非贪婪模式

正则表达式通常用于在文本中查找匹配的字符串。

贪婪模式,总是尝试匹配尽可能多的字符;

非贪婪模式则相反,总是尝试匹配尽可能少的字符。

Python里数量词默认是贪婪的。

例如:正则表达式”ab*”如果用于查找”abbbc”,将找到"abbb"。

而如果使用非贪婪的数量词”ab*?”,将找到"a”。

1。3。 反斜杠的问题

与大多数编程语言相同,正则表达式里使用"\”作为转义字符,这就可能造成反斜杠困扰。

假如你需要匹配文本中的字符"\",那么使用编程语言表示的正则表达式里将需要4个反斜杠"\\\\":

第一个和第三个用于在编程语言里将第二个和第四个转义成反斜杠,

转换成两个反斜杠\\后再在正则表达式里转义成一个反斜杠用来匹配反斜杠\。

这样显然是非常麻烦的。

Python里的原生字符串很好地解决了这个问题,这个例子中的正则表达式可以使用r"\\”表示.

同样,匹配一个数字的”\\d"可以写成r”\d”。

有了原生字符串,妈妈再也不用担心我的反斜杠问题~

标签:字符,教程,匹配,编程语言,Python,正则表达式,斜杠
From: https://blog.csdn.net/m0_38073539/article/details/143782286

相关文章

  • hadoop+Spark+基于Python的餐厅订单数据分析系统(源码+文档+调试+可视化大屏)
    收藏关注不迷路!!......
  • 初窥python泛型系统与类型约束
    对类进行索引翻阅python源码有时会看到类似这样的实现,classDataset(Generic[T_co]):Generic是一个类,但是可以直接对其进行索引,这需要归功于魔法方法__class_getitem__。classBox:def__class_getitem__(cls,item):print(cls,item)var=Box[int,bool,str......
  • 51单片机入门教程——LED闪烁实验
    要想实现LED闪烁,其实操作很简单,只需要循环让D1指示灯先亮一会后熄灭。这里就涉及一个延时问题,我们知道单片机执行每一条代码指令都是需要时间的,因此只需要编写一循环函数,让CPU不干其他事,专门在那循环运行即可实现延时功能。延时函数如下:voiddelay_10us(u16ten_us){wh......
  • 51单片机入门教程——点亮第一个LED灯
    LED即发光二极管,具有单向导电性,通过5mA左右电流即可发光,电流越大,其亮度越强,但若电流过大,会烧毁二极管。开发板上LED模块电路如下图所示:通过上图可以看出D1-D8连接单片机上的P20-P27口。图中LED采用共阳接法,即所有LED阳极管脚接电源VCC,阴极管脚通过一个471欧的限流电阻接到P2......
  • 狙击短线资金】副图指标使用技术图文教程,短线买卖更精准,通达信炒股软件指标
    如上图,副图指标【狙击短线资金】,副图指标上半部分监控资金多空区间以及强弱变化,下半部分追踪短线买卖机会和持股信号。如上图,副图指标的红色与绿色资金区域,对应行情的多头和空头。操作上,我们选择资金处于红色多头时的区间去操作。买点上,我们可以选在在副图指标下半部分......
  • 【Inventor pro 2025下载与安装教程 含破解】
    1、安装包「Inventorpro2025」:链接:https://pan.quark.cn/s/d5d3bd812ae7提取码:Jp9B「Inventor2024」:链接:https://pan.quark.cn/s/8c39fc4bc193提取码:xdG5「Inventor2019」:链接:https://pan.quark.cn/s/8d7326f76cce提取码:XfSc2、安装教程(建议关闭杀毒软件)1)  ......
  • python进阶——快速掌握【文件操作】(内附代码)
    1.文件操作1.0文件操作的重要性和应用场景1.1文件的基本概念1.1.1文件的概念文件是一个存储在某种持久性存储介质【硬盘、光盘、磁盘等】上的数据的结合。文件可包含各种类型的信息:文本、图像、音频、视频、应用程序代码、其他类型的二进制数据。文件通常由数据、元......
  • 红队老子养成记 - 最新灯塔神器(全网失传)安装教程,信息收集利器!
    大家好,我是Dest1ny!今天是红队专题中的工具篇-信息收集。信息收集的好,随便拿shell!灯塔就是一个不错的选择,但是docker上已经没有他的镜像了,所以才有了这篇教程!CLASS-1下载1.首先去下载我寻找到的镜像zip,2.6.1,用docker导入就可以了! 这里使用的百度网盘的资源!!通过网......
  • 带你一起全面了解关于Python网络爬虫的相关知识点!
     成长路上不孤单......
  • Python并行编程1并行编程简介(上)高频面试题:GIL进程线程协程
    1并行编程简介首先,我们将讨论允许在新计算机上并行执行的硬件组件,如CPU和内核,然后讨论操作系统中真正推动并行的实体:进程和线程。随后,将详细说明并行编程模型,介绍并发性、同步性和异步性等基本概念。介绍完这些一般概念后,我们将讨论全局解释器锁(GIL)及其带来的问题,从而了解Py......