Python之正则表达式基础语法

本文介绍了Python中正则表达式的基础语法,包括基本匹配、元字符、简写字符集、零宽度断言和标志等内容,通过实例解析了点运算符、字符集、重复次数等概念,并提供了在线测试正则表达式的网址。
摘要由CSDN通过智能技术生成

问题场景:

做项目,遇到需要用正则表达式来处理文本数据,菜鸡的我又开始了现学现卖的自我救赎之路。现学现卖的过程中将笔记心得记录下来,以供后续温习,或者给他人提供帮助。边学边记,文章若有什么不妥,欢迎评论区怼我,谢谢。

什么是正则表达式

正则表达式是一组由字母和符号组成的特殊文本,它可以用来从文本中找出满足你想要的格式的句子。

在python中使用正则表达式的正确打开方式如下:

import re
pattern = re.compile(r'[A-Za-z0-9-]')   #编译字符串
a = '我好菜鸡a我好菜鸡123-'
b = pattern.findall(aa)
b

输出结果

['a', '1', '2', '3', '-']
#把字符串中的英文(大小写都有)、数字以及'-'找出来

只需要将正则表达式放到 r’ ' 引号里即可。
okay,正则表达式千变万化,具体的怎么匹配出自己想要的字符,还是要从底层去了解一下各种符号的含义,而不是直接去网上搜常用的正则表达式,虽然一般的需求都能在网上找到,但是不够灵活。
先来一个在线测试正则表达式的网址: 在线练习

1、基本匹配

匹配具体的一个词,例如the(注意大小写敏感)

pattern = re.compile(r'the')
aa = 'the我好菜鸡a我好菜鸡123-'
b = pattern.findall(aa)
b

输出结果

['the']

看到了吧,就是这么简单!!!

2、元字符

正则表达式主要依赖于元字符。 元字符不代表他们本身的字面意思,他们都有特殊的含义。一些元字符写在方括号中的时候有一些特殊的意思。以下是一些元字符的介绍:

元字符 描述
. 句号匹配任意单个字符除了换行符。
[ ] 字符种类。匹配方括号内的任意字符。
[^ ] 否定的字符种类。匹配除了方括号里的任意字符
* 匹配>=0个重复的在*号之前的字符。
+ 匹配>=1个重复的+号前的字符。
? 标记?之前的字符为可选.
{n,m} 匹配num个大括号之前的字符或字符集 (n <= num <= m).
(xyz) 字符集,匹配与 xyz 完全相等的字符串.
| 或运算符,匹配符号前或后的字符.
\ 转义字符,用于匹配一些保留的字符 [ ] ( ) { } . * + ? ^ $ \
^ 从开始行开始匹配.
$ 从末端开始匹配.

怎么样,是不是会了?(手动狗头,我们使用大量的例子来解释)

2.1 点运算符.

. 运算符属于最简单的一个例子了吧。可以匹配任意一个字符。
比如’.the’就是要匹配出后面跟着”the“的字符串

pattern = re.compile(r'.the')
aa = 'a啊the我好菜鸡a我好菜鸡123-'
b = pattern.findall(aa)
b

输出结果

['啊the']
2.2 字符集[]

方括号[]用来指定一个字符集。括号里面可以用-来表示字符的

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值