龙空技术网

Python学习 | Python中的re 模块

IT老曾 129

前言:

今天你们对“re替换python”大概比较关注,看官们都需要剖析一些“re替换python”的相关内容。那么小编同时在网摘上网罗了一些对于“re替换python””的相关知识,希望我们能喜欢,我们一起来了解一下吧!

正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,该模式描述在搜索文本时要匹配的一个或多个字符串。

Python中的re 模块,它提供 Perl 风格的正则表达式模式。

一、re.match函数

re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。

函数语法:

re.match(pattern, string, flags=0)

例子:

import retest = str(input("用户输入的字符串:"))p1=r'正则表达式'if re.match(p1, test): print('发现这段文字:'+p1)else: print('没有这段文字:'+p1)

二、re.search方法

re.search 扫描整个字符串并返回第一个成功的匹配。

函数语法:

re.search(pattern, string, flags=0)

例子:

import rekey = r"<html><body><h1>1668s.com<h1></body></html>"p1 = r"(?<=<h1>).+?(?=<h1>)"pattern1 = re.compile(p1)matcher1 = re.search(pattern1,key)print (matcher1.group(0))

re.match只匹配字符串的开始,如果字符串开始不符合正则表达式,则匹配失败,函数返回None;而re.search匹配整个字符串,直到找到一个匹配。

三、compile 函数

compile 函数用于编译正则表达式,生成一个正则表达式( Pattern )对象,供 match() 和 search() 这两个函数使用。

语法格式为:

re.compile(pattern[, flags])

四、re.sub方法

用于替换字符串中的匹配项。

语法:

re.sub(pattern, repl, string, count=0, flags=0)

例子:

import retext = "1668s.com #网址一个"# 删除注释url = re.sub(r'#.*$', "", text)print("网址 : ", url)# 替换成另外的网址url = re.sub(r'1668s', r'hi-laoz', url)print("网址 : ", url)

五、findall方法

在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表。

注意: match 和 search 是匹配一次 findall 匹配所有。

语法:

findall(string[, pos[, endpos]])

例子:

key = r"aceadfadshttp://1668s.com12341234123411http://1668s.com1234sadfasdfaf"p1 = r"http://1668s.com"pattern1 = re.compile(p1)print (pattern1.findall(key))

六、正则表达式里的元字符及其作用

标签: #re替换python