少说话多写代码之Python学习065——标准模块(re模块)

栏目: Python · 发布时间: 7年前

内容简介:Python的re模块主要是正则表达式的操作函数。我们看看主要的几个函数。首先我们要引入re模块。compile将包含正则表达式字符串创建为对象。

Python的re模块主要是正则表达式的操作函数。我们看看主要的几个函数。

首先我们要引入re模块。

import re

compile将包含正则表达式字符串创建为对象。

search在目标字符串中按照给定的正则表达式匹配结果

match在字符串的开始处匹配指定正则表达式

split根据正则表达式分割字符串

findall列举出字符串中符合指定正则表达式的所有匹配项

sub将字符串中所有符合指定正则表达式的项用另一个项代替

escape将字符串中所有特殊正则表达式字符转义

我们通过如下例子,了解下这几个函数。

compile,search,match函数,
smod= re.compile('大[汉唐宋明]')
if re.search(smod,'大宋'):
    print('匹配正确%s' %'大宋')
if  re.search(smod,'大梁') != True:
    print('匹配错误%s' %'大梁')
ming= re.match(smod,'大唐')
print(ming)

输出

匹配正确大宋
匹配错误大梁
<_sre.SRE_Match object; span=(0, 2), match='大唐'>

split函数

content = '劝君莫惜金缕衣,劝君惜取少年时。花开堪折直须折,莫待无花空折枝。'
contentArray=re.split('[,。]',content)
print(contentArray)

输出

['劝君莫惜金缕衣,劝君惜取少年时', '花开堪折直须折', '莫待无花空折枝', '']

字符串中有逗号和句号,为了分割为数组,按照逗号和句号分割。

上面的分割中,也可以指定分割的次数,比如,

content2='天地英雄气,千秋尚凛然。势分三足鼎,业复五铢钱。'
contentArray2= re.split('[,。]',content2,maxsplit=1)
contentArray3 = re.split('[,。]',content2,maxsplit=4)
print(contentArray2)
print(contentArray3)

输出

['天地英雄气', '千秋尚凛然。势分三足鼎,业复五铢钱。']
['天地英雄气', '千秋尚凛然', '势分三足鼎', '业复五铢钱', '']

findall函数

pat='[a-z]+'
text ='how are you? fine! thank you. and you?'
result = re.findall(pat,text)
print(result)

输出

['how', 'are', 'you', 'fine', 'thank', 'you', 'and', 'you']

将所有符合要求的项都找出来。

sub函数

patsub='{name}'
txtsub='Hello {name}'
txt = re.sub(patsub,'王维',txtsub)
print(txt)

输出

Hello 王维

这个其实就是我们平时使用的字符串替换的一个高级使用,比如我们要把一篇文章中'我'替换为'他',就是一个字符替换为另一个字符。

这里是按照正则表达式来替换。

escape函数

escape = re.escape('得相能开国,生儿不象贤。凄凉蜀故妓,来舞魏宫前。')
print(escape)

输出

\得\相\能\开\国\,\生\儿\不\象\贤\。\凄\凉\蜀\故\妓\,\来\舞\魏\宫\前\。

这是将每个字符都转义了。

工程文件下载: https://download.csdn.net/download/yysyangyangyangshan/10865919


以上所述就是小编给大家介绍的《少说话多写代码之Python学习065——标准模块(re模块)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

需求

需求

[美] 亚德里安•斯莱沃斯基(Adrian J. Slywotzky)、[美]卡尔•韦伯 (Karl Weber) / 魏薇、龙志勇 / 浙江人民出版社 / 2013-6 / 64.9

《财富汇•需求:缔造伟大商业传奇的根本力量》内容简介:需求,是缔造伟大商业传奇的根本力量。《财富汇•需求:缔造伟大商业传奇的根本力量》呈现了人们无法拒绝、竞争对手无法复制的需求创造的六大关键,在人们无奈接受的现状和心中真正期待的理想的这道鸿沟之上,架设起了一道桥梁。 创造需求,需要解开一个谜团,这个谜团是人类学、心理学、科技、设计、经济学、基础设施以及其他众多因素综合而成的奇特组合。《财富汇......一起来看看 《需求》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

在线进制转换器
在线进制转换器

各进制数互转换器

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具