正则表达式基础

正则表达式基础

基础一

全局匹配函数使用格式 :
re.compile(正则表达式).findall(源字符串)

普通字符正常匹配
\n匹配换行符
\t匹配制表符
\w匹配字母、数字、下划线
\W匹配除字母、数字、下划线
\d匹配十进制数字
\D匹配除十进制数字
\s匹配空白字符
\S匹配除空白字符
[ab89x]原子表,匹配ab89x中任意一个
[^ab89x]原子表,匹配除ab89x以外的任意一个

基础二

.匹配除换行符以外的任意一个字符
^匹配开始位置
-----------------
$匹配结束位置
-----------------
*前一个字符出现0\1\多次
-----------------
?前一个字符出现0\1次
-----------------
+前一个字符出现1\多次
-----------------
{n}前一个字符恰好出现n次
-----------------
{n,}前一个字符至少出现n次
-----------------
{n,m}前一个字符至少出现n次,至多出现m次
-----------------
()模式单元,即,想提取什么内容,就在正则中用小括号将其括起来

注意

string = “aliyun”
正则表达式:“^li…"
匹配结果:None(因为字符串不是以l开头的)

string = ”aliyunedu“
正则表达式:“ali.*"
匹配结果:aliyunedu (默认贪婪,即尽可能多地进行匹配)

基础三

贪婪模式:尽可能多地匹配
懒惰模式/精准模式:尽可能少地匹配

默认贪婪模式!
若出现如下组合,则代表懒惰模式:

  1. *?
  2. +?

基础四

模式修正符:在不改变正则表达式的情况下通过模式修正符使匹配模式发生更改。

re.S让 . 可以匹配多行
re.I让匹配时忽略大小写
实例

导入re包:import re

string="aliyunedu"
pat="yu.?"
re.compile(pat).findall(string)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值