正则表达式概述
- 概念
- 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑(可以用来做检索,截取或者替换操作)
- 简介
- 正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串
- 作用
- 1.给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”)
- 2.可以通过正则表达式,从字符串中获取我们想要的特定部分。
- 3.还可以对目标字符串进行替换操作
在Python中需要通过正则表达式对字符串进行匹配的时候, 可以一个模
块, 名字为re
re模块之match的基本使用:
-
语法:
- result = re.match(正则表达式,要匹配的字符串)
-
意义:
- re.match是用来进行正则匹配检查的方法,如果字符串开头的0个或多个字符匹配正则表达式模式,则返回相应的match对象。如果字符串不匹配模式,返回None(注意不是空字符串"")
- 匹配对象Macth Object具有group()方法, 用来返回字符串的匹配部分,具有span()方法。返回匹配字符串的位置(元组存储开始,结束位置),具有start(),end()方法,存储匹配数据的开始和结束位置。(也可以通过对象的dir(对象查看对象的方法))
- 注意:如果想在目标字符串的任意位置查找,需要使用search
-
案例:(mathch vs search)
import re pattern = 'Hello' str1 = 'HelloWorld' v = re.match(pattern,str1) print(type(v)) print(v) # print(dir(v)) #使用group可以获取匹配到的数据 # print(v.group())
表示字符
-
语法格式:
字符 功能 . 匹配任意一个字符(除了\n) [] 匹配列表中的字符 \d 匹配数字,即0-9 \D 匹配非数字 \s 匹配空白、即空格(\n,\t) \S 匹配非空格 \w 匹配单词字符,即a-z,A-Z,0-9,_ \W 匹配非单词字符 -
使用示例1
import re v = re.match('.','a') v = re.match('.','1') v = re.match('.','_') #返回Non