Python基础-32-正则表达式

本文详细介绍了Python中的正则表达式,包括其作为强大字符串匹配工具的用途,正则表达式的类型描述如原样匹配、.匹配、转义等,数量描述如*、+、?和{},特殊匹配如贪婪匹配及各种匹配方法如match、search、split和sub的应用。掌握这些内容能帮助读者深入理解并有效运用正则表达式。
摘要由CSDN通过智能技术生成

正则表达式介绍

1.正则表达式一种用来匹配字符串的强有力武器,用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,就认为它“匹配”了,否则,该字符串就是不合法的

2.正则表达式是高级的字符串匹配处理方式

3.正则表达式的原理:通过描述匹配内容的类型和长度来获取字符串当中的指定字符

 

正则表达式的划分

1.对类型的描述

(1)原样匹配

通常原样匹配会结合其他匹配一起出现

r''或者r"",表示中间的部分就是全部的原含义,没有任何的特殊含义

原样匹配,通常会结合其他匹配一起出现

import re

str_ = "suner suner"
str_1 = re.findall(r"u",str_)
print(str_1)  # 结果:['u', 'u']

 

(2). 匹配,匹配所有非换行的字符

import re

str_ = "suner yao xue xi"
str_1 = re.findall(r".", str_) # 匹配任意一个
str_2 = re.findall(r"..", str_) # 匹配任意两个
str_3 = re.findall(r"...", str_) # 匹配任意三个
str_4 = re.findall(r"....", str_) # 匹配任意四个

print(str_1)  # 结果:['s', 'u', 'n', 'e', 'r', ' ', 'y', 'a', 'o', ' ', 'x', 'u', 'e', ' ', 'x', 'i']
print(str_2)  # 结果:['su', 'ne', 'r ', 'ya', 'o ', 'xu', 'e ', 'xi']
print(str_3)  # 结果:['sun', 'er ', 'yao', ' xu', 'e x']
print(str_4)  # 结果:['sune', 'r ya', 'o xu', 'e xi']

s.u:在“s”和“u”中间的任何字符,如:suu、syu,swu等

.sun:匹配在字符串sun前面的任意一个字符

 

(3)\ 转义,将特殊字符的特殊含义转义掉,变为一个普通的匹配字符串

import re

str_ = "zhe ge shi 20.000.00"
str_1 = re.findall(r"\.", str_)  
print(str_1)  # 结果:['.', '.']

(4)\d 匹配数字

规则:在正则匹配当中,大写和小写匹配的内容是相反的

import re

str_ = "zhe ge 20000 na ge 5000"
str_1 = re.findall(r"\d", str_)   # 匹配一个数字
str_2 = re.findall(r"\d\d", str_)  # 匹配连续两个数字

print(str_1)  # 结果:['2', '0', '0', '0', '0', '5', '0', '0', '0']
print(str_2)  # 结果:['20', '00', '50', '00']

(5)\D 匹配非数字

import re

str_ = "zhe $$ 20000 na **a5000"
str_1 = re.findall(r"\D", str_)   # 匹配一个非数字
str_2 = re.findall(r"\D\D", str_)  # 匹配连续两个非数字

print(str_1)  # 结果:['z', 'h', 'e', ' ', '$', '$', ' ', ' ', 'n', 'a', ' ', '*', '*', 'a']
print(str_2)  # 结果:['zh', 'e ', '$$', ' n', 'a ', '**']

(6)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值