问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Python re正则表达式模块及其用法

发布网友 发布时间:2022-04-06 14:17

我来回答

2个回答

懂视网 时间:2022-04-06 18:38

字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在。比如判断一个字符串是否是合法的Email地址,虽然可以编程提取@前后的子串,再分别判断是否是单词和域名,但这样做不但麻烦,而且代码难以复用。正则表达式是一种用来匹配字符串的强有力的武器。它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符串,我们就认为它“匹配”了,否则,该字符串就是不合法的。

所以我们判断一个字符串是否是合法的Email的方法是:

创建一个匹配Email的正则表达式;

用该正则表达式去匹配用户的输入来判断是否合法。

因为正则表达式也是用字符串表示的,所以,我们要首先了解如何用字符来描述字符。

在正则表达式中,如果直接给出字符,就是精确匹配。用d可以匹配一个数字,w可以匹配一个字母或数字,所以:

'00d'可以匹配'007',但无法匹配'00A';

'ddd'可以匹配'010';

'wwd'可以匹配'py3';

.可以匹配任意字符,所以:

'py.'可以匹配'pyc'、'pyo'、'py!'等等。

要匹配变长的字符,在正则表达式中,用*表示任意个字符(包括0个),用+表示至少一个字符,用?表示0个或1个字符,用{n}表示n个字符,用{n,m}表示n-m个字符:

来看一个复杂的例子:d{3}s+d{3,8}。

我们来从左到右解读一下:

d{3}表示匹配3个数字,例如'010';

s可以匹配一个空格(也包括Tab等空白符),所以s+表示至少有一个空格,例如匹配' ',' '等;

d{3,8}表示3-8个数字,例如'1234567'。

综合起来,上面的正则表达式可以匹配以任意个空格隔开的带区号的电话号码。

如果要匹配'010-12345'这样的号码呢?由于'-'是特殊字符,在正则表达式中,要用''转义,所以,上面的正则是d{3}-d{3,8}。

但是,仍然无法匹配'010 - 12345',因为带有空格。所以我们需要更复杂的匹配方式。

热心网友 时间:2022-04-06 15:46

1.第一个参数是正则表达式,这里为"(\w+)\s",如果匹配成功,则返回一个Match,否则返回一个None;
2.第二个参数表示要匹配的字符串;
3.第三个参数是标致位,用于控制正则表达式的匹配方式,如:是否区分大小写,多行匹配等等。 re.search函数会在字符串内查找模式匹配,只到找到第一个匹配然后返回,如果...
4.第四个参数指替换个数。默认为0,表示每个匹配项都替换。 re.sub还允许使用函数对匹配...
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
汽车胎扎了个钉子是拔还是不拔? 台式机电源什么牌子好 台式机电源有哪些牌子 金牌 银牌 铜牌电源哪个好 台式机电源等级性能解析 电脑电源推荐-全汉(FSP) 500W银牌(88%)全模组SFX电源 我的妻子背叛了我,我该怎么办, 初一语文复习材料(急急急!!!) 绿色蝈蝈课后题答案七上语文 女人梦见黄鼠狼的七大预兆 怎么知道注塑机螺杆有无卡死现象? 请问为什么在钢之炼金术师fa里,爱德华一开始不用炼金术换 如何在一个陌生的地方找到黑网吧? 什么软件可以看网吧有没有开门美团看不了 附近正在营业的网吧? 高德地图怎么查附近有没有网吧 离我最近的网吧定位 附近网吧位置最近的地方 微信里昨天来了个微粒贷,之前没有,但点开却综合评估未通过,不能借钱怎么回事? 定位我附近哪里有网吧 cfa监考要说英文吗 cfa一级考试一定要用中文教材吗 CFA考试是全是英文的选择题吗? 微粒贷口子开通了,为什么无法借钱?显示的是综合评估未通过,请问大神们,这是什么原因? 国际金融分析师的考试是全英的吗 中国CFA考试是汉语吗 美图秀秀怎么把图片做成视频 谁能给个工艺阀和仪表阀的准确定义。仪表阀算是截止阀的一种么?工艺阀 仪表阀和工艺阀有什么区别? A105/F316/ST 阀门材质 谁能给我写出关于阀门的专业英语单词缩写,包括材料的缩写,什么连接的缩写,谢谢啦 汽车仪表盘跟阀门似的标志是什么意思 离我最近的网吧在哪里 鲜蘑与芹菜能在一起做饺馅吗? 哪个手机软件能查到附近的网吧呢 有没有查看附近网吧游戏的软件 在一个陌生的地方,我想上网。如何快速的找到附近网吧?网吧一般会分布在哪些地方? 苹果手机有可以查找周边的网吧等娱乐场所 软件吗? 香菇芹菜胡萝卜鸡蛋素做饺子馅儿怎么做?请介绍一下制做过程!谢谢! 为什么掌上英雄联盟看不了附近特权网吧 怎么寻找附近的“黑网吧”? 农行企业贷好办 培养创新思维的方法有几种 创新思维的几个方法 提升创新思维的方法 创新思维方法有哪些? 有效创新四个方法指的是什么? 创新技法是什么? 创新思维训练的方法有哪些 如何养成创新思维用一种技法和两种思维方式说明八百字 创新思维*的实用方法有:头脑风暴法、提出问题法、选择一项: A .案例讨论法_百度问一问 怎么发病毒到别人的QQ号里。