Python学习的自我理解和想法(22)

简介: 本文记录了作者学习Python第22天的内容——正则表达式,基于B站千锋教育课程。文章简要介绍了正则表达式的概念、特点及使用场景(如爬虫、数据清洗等),并通过示例解析了`re.search()`、`re.match()`、拆分、替换和匹配中文等基本语法。正则表达式是文本处理的重要工具,尽管入门较难,但功能强大。作者表示后续会深入讲解其应用,并强调学好正则对爬虫学习的帮助。因时间有限,内容为入门概述,不足之处敬请谅解。

学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码!
今天是学Python的第22天,学的内容是正则表达式,明天会出一篇详细实例介绍。电脑刚修好!开学了,时间不多,写得不多,见谅。
目录

  1. 正则表达式简介
    (1).语法
    (2).简介
    (3).特点
    (4).使用场景
  2. 导入概念
  3. 解析代码
    4.正则的基本语法
    (1).查找函数
    (1).re.match( )
    (2).re.search( )
    (2).拆分
    (3).替换
    (4).匹配中文
    总结

1. 正则表达式简介

(1).语法

656839fc0d1046bb81cfd92d64d6aa6b.jpg
这里是部分,详细版在后面会出.

(2).简介

是一个特殊的字符序列,计算机科学中的一个概念,主要用来检索\替换那些符合某个模式的文本。在python中使用正则表达式,借助的是re模块,通过re模块可以实现正则表达式的绝大多数的功能。正则表达式在文本处理中扮演着至关重要的角色。它就像是一把神奇的钥匙,可以打开复杂文本数据中的秘密之门。它拥有自己独特的语法和处理引擎,虽然在效率上可能不如一些字符串自带的方法,但在功能的强大性上无可比拟。

(3).特点

1.灵活性\功能性\逻辑性非常强
2.可以使用极简单的方式达到字符串的复杂控制.

(4).使用场景

爬虫
验证手机号,身份证号,邮箱等
数据分析的数据清洗或整理

2. 导入概念

要求:封装一个功能,判断用户输入的手机号码是否合法.

普通方法

image.png

正则表达式方法

image.png

3. 解析代码

re.search(r"^1\d{10}$",checkPhone)
AI 代码解读

首先,^ 表示的是正则表达式的开始,\d表示0-9之间的数字,{10}表示重复10次,$表示正则表达式的结束,checkPhone表示被正则表达式检测的变量。结果是一个布尔类型,所以可以用if语句进行检测.

4.正则的基本语法

(1).查找函数

(1).re.match( )

语法:匹配字符串是否以指定的正则内容开头,匹配成功返回对象,匹配失败返回None。
第一个参数:正则表达式;
第二个参数:要验证的字符;
第三个参数:可选参数,正则表达式的修饰符.
只能匹配数字开头的,同时也不能匹配到非数字后面的数字!
image.png

(2).re.search( )

语法:匹配字符串中是否包含指定的内容,匹配成功返回对象,匹配失败返回None.
可以匹配非数字开头的,但不能匹配到非数字后面的数字!
image.png

(2).拆分

语法:re.spilt(正则表达式,"要处理的数据")
image.png

(3).替换

语法:re.sub(正则表达式,替换后的内容,要替换的字符串)
image.png

(4).匹配中文

语法:最常见的,定义chinese=“[\u4e00-\u9fa5]+]”
image.png
自我理解:在这文章只是对正则表达式的一篇简单的介绍入门而已,后面会写一篇文章来介绍不同的正则表达式的使用方法。正则表达式是一篇特别难的知识点,它的应用范围很广,而且它的代码只有在特定的环境中才会很好的被理解。
我们后面写爬虫的时候会继续讲解正则表达式,学好正则表达式对后面的爬虫的理解也很有帮助。

总结

这是我今天学Python的自我想法和对其的理解,有不对的地方请同志们多多包涵,谢谢观看!

目录
打赏
0
22
22
5
143
分享
相关文章
Python学习的自我理解和想法(18)
这是我在学习Python第18天的总结,内容基于B站千锋教育课程,主要涉及面向对象编程的核心概念。包括:`self`关键字的作用、魔术方法的特点与使用(如构造函数`__init__`和析构函数`__del__`)、类属性与对象属性的区别及修改方式。通过学习,我初步理解了如何利用这些机制实现更灵活的程序设计,但深知目前对Python的理解仍较浅显,欢迎指正交流!
Python学习的自我理解和想法(19)
这是一篇关于Python面向对象学习的总结,基于B站千锋教育课程内容编写。主要涵盖三大特性:封装、继承与多态。详细讲解了继承(包括构造函数继承、多继承)及类方法与静态方法的定义、调用及区别。尽管开学后时间有限,但作者仍对所学内容进行了系统梳理,并分享了自己的理解,欢迎指正交流。
Python学习的自我理解和想法(20)
这是我在B站千锋教育课程中学习Python第20天的总结,主要涉及面向对象编程的核心概念。内容包括:私有属性与私有方法的定义、语法及调用方式;多态的含义与实现,强调父类引用指向子类对象的特点;单例设计模式的定义、应用场景及实现步骤。通过学习,我掌握了如何在类中保护数据(私有化)、实现灵活的方法重写(多态)以及确保单一实例(单例模式)。由于开学时间有限,内容简明扼要,如有不足之处,欢迎指正!
Python学习的自我理解和想法(23)
本文记录了学习Python正则表达式的第23天心得,内容基于B站麦叔课程。文章分为三个部分:1) 正则表达式的七个境界,从固定字符串到内部约束逐步深入;2) 写正则表达式的套路,以座机号码为例解析模式设计;3) 正则表达式语法大全,涵盖字符类别、重复次数、组合模式、位置、分组、标记、特殊字符和替换等知识点。总结中表达了对知识的理解,并欢迎指正。
Python学习的自我理解和想法(21)
这是一篇关于Python文件操作的学习总结,基于B站千锋教育课程内容整理而成。文章详细介绍了文件操作的基础知识,包括参数(路径、模式、编码)、注意事项(编码一致性、文件关闭)以及具体操作(创建、读取、写入文件)。同时,深入解析了路径的概念,区分绝对路径与相对路径,并通过示例演示两者在实际应用中的差异。此外,还强调了不同模式(如"w"覆盖写入和"a"追加写入)对文件内容的影响。整体内容逻辑清晰,适合初学者掌握Python文件操作的核心技巧。
Python学习的自我理解和想法(24)
本文记录了学习Python操作Excel的第24天内容,基于B站千锋教育课程。主要介绍openpyxl插件的使用,包括安装、读取与写入Excel文件、插入图表等操作。具体内容涵盖加载工作簿、获取单元格数据、创建和保存工作表,以及通过图表展示数据。因开学时间有限,文章简要概述了各步骤代码实现,适合初学者参考学习。如有不足之处,欢迎指正!
Python学习:内建属性、内建函数的教程
本文介绍了Python中的内建属性和内建函数。内建属性包括`__init__`、`__new__`、`__class__`等,通过`dir()`函数可以查看类的所有内建属性。内建函数如`range`、`map`、`filter`、`reduce`和`sorted`等,分别用于生成序列、映射操作、过滤操作、累积计算和排序。其中,`reduce`在Python 3中需从`functools`模块导入。示例代码展示了这些特性和函数的具体用法及注意事项。
Python学习五:函数、参数(必选、可选、可变)、变量、lambda表达式、内置函数总结、案例
这篇文章是关于Python函数、参数、变量、lambda表达式、内置函数的详细总结,包含了基础知识点和相关作业练习。
90 0
|
11月前
|
【Python学习篇】Python实验小练习——函数(十)
【Python学习篇】Python实验小练习——函数(十)
67 1
|
11月前
|
【Python学习篇】Python——函数(九)
【Python学习篇】Python——函数(九)
95 1
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等