正则表达式 匹配点号_Python入门:正则表达式(Regular Expression)

正则表达式是一种强大的文本匹配工具,常用于数据爬取和网页抓取。它通过组合不同的操作符和原子来描述一系列匹配规则。例如,'[A-Z]'匹配大写字母,'+'表示匹配一个或多个前面的原子,'*'表示匹配零个或多个,'?'表示非贪婪匹配。在编程中,正则表达式被广泛用于字符串操作,如搜索、替换等任务。
摘要由CSDN通过智能技术生成

正则表达式用来干嘛

  • 正则表达式是用来匹配文本的一种语言。别被语言吓到,正则表达式其实非常简单,可能你花2个小时就能用起来,但是你一定会觉得非常强大,像非常厉害的数据爬取,网页爬虫,都要用到正则表达式!

什么是正则表达式

维基百科解释:

正则表达式(英语:Regular Expression,在代码中常简写为 regex、regexp 或 RE),又称正规表示式、正规表示法、正规运算式、规则运算式、常规表示法,是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在 Perl 中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由 Unix 中的工具软件(例如 sed 和 grep)普及开的。

833414d8146b604c69171aaef7e967e0.png
表格1

单位划分

  • 正则表达式由操作符和原子构成(操作元),也就是操作符,和操作的对象!先上个例子1:
import 

操作原子

本意原子

  • 例1中[A-Z]的意思是匹配大写字母,且只匹配一个大写字母!如例2:
import 
  • 而[a-z]只匹配一个小写字母。如例3:
import 
  • +加号表示匹配1个或者多个前面的操作元,默认情况是匹配尽可能多的字符,什么意思呢?如例4
import 
  • 例4中结果匹配了两个WW,但是加一个问号?就表示尽可能少的匹配,也就是非贪婪模式。如例5:
import 
  • *星号的意思是匹配0个或者多个,同样有贪婪模式和非贪婪模式。例子1中*星号后面有个问号?表示非贪婪模式,匹配数字0个数字,一般情况下就是不匹配数字的意思
  • 注意正则匹配是拿整个表达式去匹配文本,得到的加入到列表中,然后从匹配到的字符下一个字符开始重新匹配,如此循环直到结束!
  • 例1中A-Z,a-z,0-9是正则表达式的本意原子,表示的就是本身,没有其他意思
  • 而加号+星号*?减号-等并不是表示表面上的的意思,如+加号并不是字符串拼接或者两个数字相加,同样的-减号并不是两个数字相减,[0-9]表示的是匹配0-9中的任意一个整数.
  • 例1中的*号是数量操作符,表示匹配0个或者多个前面一个原子,类似的操作符还有+,?,*, {n, m}对照表格1.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值