当前位置: 首页 > news >正文

做教育门户网站法律风险网站推广优化外包公司哪家好

做教育门户网站法律风险,网站推广优化外包公司哪家好,网站吸引客户,wordpress 反广告文章目录 专栏导读1、match2、匹配目标3、通用匹配4、常用匹配规则表格 专栏导读 ✍ 作者简介:i阿极,CSDN 数据分析领域优质创作者,专注于分享python数据分析领域知识。 ✍ 本文录入于《python网络爬虫实战教学》,本专栏针对大学生…

在这里插入图片描述

文章目录

  • 专栏导读
  • 1、match
  • 2、匹配目标
  • 3、通用匹配
  • 4、常用匹配规则表格

专栏导读

✍ 作者简介:i阿极,CSDN 数据分析领域优质创作者,专注于分享python数据分析领域知识。

本文录入于《python网络爬虫实战教学》,本专栏针对大学生、初级数据分析工程师精心打造,对python基础知识点逐一击破,不断学习,提升自我。
订阅后,可以阅读《python网络爬虫实战教学》中全部文章内容,包含python基础语法、数据结构和文件操作,科学计算,实现文件内容操作,实现数据可视化等等。
✍ 其他专栏:《数据分析案例》 ,《机器学习案例》

😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁评论📒+关注哦!👍👍👍

1、match

这里首先介绍第一个常用的匹配方法一一—match,向它传人要匹配的字符串以及正则表达式,就可以检测这个正则表达式是否和字符串相匹配。
match方法会尝试从字符串的起始位置开始匹配正则表达式,如果匹配,就返回匹配成功的结果;如果不匹配,就返回None。
实例如下:

import re
content = 'Hello 123 4567 World_This is a Regex Demo'
print(len(content))
result = re.match("^Hello\s\d\d\d\s\d{4}\s\w{10}", content)
print(result)
print(result.group())
print(result.span())

运行结果如下:

41
<re.Match object; span=(0, 25), match='Hello 123 4567 World_This'>
Hello 123 4567 World_This
(0, 25)

这个实例首先声明了一个字符串,其中包含英文字母、空白字符、数字等。接着写了一个正则表达式:
^Hello\s\d\d\d\s\d{4}\s\w{10}
用它来匹配声明的那个长字符串。开头的^表示匹配字符串的开头,也就是以Hello开头;然后\s表示匹配空白字符,用来匹配目标字符串里Hello后面的空格;\d表示匹配数字,3个\d用来匹配123;紧接着的1个\s表示匹配空格;目标字符串的后面还有4567,我们其实依然可以用4个\d来匹配,但是这么写比较烦琐,所以可以用\d后面跟{4}的形式代表匹配4次数字;后面又是1个空白字符,最后\w{10}则表示匹配10个字母及下划线。我们注意到,这里其实并没有把目标字符串匹配完,不过这样依然可以进行匹配,只是匹配结果短一点而已。

在match方法中,第一个参数是传人了正则表达式,第二个参数是传人了要匹配的字符串。将输出结果打印出来,可以看到结果是SRE_Match对象,证明匹配成功。
该对象包含两个方法:

group方法可以输出匹配到的内容,结果是Hello 123 4567 World_This,这恰好是正则表达式按照规
则匹配的内容;
span方法可以输出匹配的范围,结果是(0,25),这是匹配到的结果字符串在原字符串中的位置范围。

通过上面的例子,我们基本了解了如何在Python中使用正则表达式来匹配一段文字。

2、匹配目标

用match方法可以实现匹配,如果想从字符串中提取一部分内容,该怎么办呢?就像上一节的实例一样,从一段文本中提取出E-mail地址或电话号码。

可以使用括号()将想提取的子字符串括起来。()实际上标记了一个子表达式的开始和结束位置,被标记的每个子表达式依次对应每个分组,调用group方法传入分组的索引即可获取提取结果。

实例如下:

import re
content = 'Hello 1234567 World_This is a Regex Demo'
result= re.match('^Hello\s(\d+)\sWorld',content)
print(result)
print(result.group())
print(result.group(1))
print(result.span())

运行结果如下:

<re.Match object; span=(0, 19), match='Hello 1234567 World'>
Hello 1234567 World
1234567
(0, 19)

可以看到,我们成功得到了1234567。这里用的是group(1),它与group()有所不同,后者会输出完整的匹配结果,前者会输出第一个被()包围的匹配结果。假如正则表达式后面还有用()包围的内容,那么可以依次用group(2)、group(3)等获取。

3、通用匹配

刚才我们写的正则表达式其实比较复杂,只要出现空白字符就需要写Is匹配,出现数字就需要写\d匹配,这样的工作量非常大。其实完全没必要这么做,因为还有一个万能匹配可以用,就是.*。
其中,可以匹配任意字符(除换行符),*代表匹配前面的字符无限次,所以它们组合在一起就可以匹配任意字符了。有了它,我们就不用个字符进行匹配了。

接着上面的例子,我们利用.*改写一下正则表达式:

import re
content = 'Hello 123 4567 World_This is a Regex Demo'
result = re.match("^Hello.*Demo$", content)  
print(result)
print(result.group())
print(result.span())

这里我们直接省略中间部分,全部用,*来代替,并在最后加一个结尾字符串。

运行结果如下:

<re.Match object; span=(0, 41), match='Hello 123 4567 World_This is a Regex Demo'>
Hello 123 4567 World_This is a Regex Demo
(0, 41)

可以看到,group方法输出了匹配的全部字符串,也就是说我们写的正则表达式匹配到了目标字符串的全部内容;span方法输出(0,41),这是整个字符串的长度。

因此,使用.*能够简化正则表达式的书写。

4、常用匹配规则表格

在这里插入图片描述

📢文章下方有交流学习区!一起学习进步!💪💪💪
📢首发CSDN博客,创作不易,如果觉得文章不错,可以点赞👍收藏📁评论📒
📢你的支持和鼓励是我创作的动力❗❗❗

http://www.zhongyajixie.com/news/20885.html

相关文章:

  • 学校网站建设责任书优化网站内容的方法
  • 安溪学校网站建设足球排名最新排名世界
  • 网站短链接生成器如何建网站
  • 支付商城网站制作好的seo网站
  • 做房地产网站数据分析网页
  • 做调研的网站有哪些广州网站营销优化qq
  • 合肥做装修哪个网站好百度精简版网页入口
  • 网页打不开但是有网什么原因如何解决海南快速seo排名优化
  • 课程网站建设的步骤自助建站系统下载
  • 最新的网站开发框架百度网页游戏大厅
  • 软路由系统如何做网站郑州网站建设用户
  • 专门做旅游攻略的网站一键清理加速
  • 上海网站建设规划朋友圈广告投放平台
  • 深圳外贸网站建设工作室宁波seo公司排名
  • 怎么做网站的seo优化沈阳seo排名公司
  • 小制作简单又漂亮优化大师客服电话
  • 织梦dede新闻网站源码seo百度关键字优化
  • 广州建网站报价兰州seo优化
  • it外包服务项目宁波seo快速优化平台
  • 昆明哪些做网站建设的公司搜索数据
  • 免费建网站代码互联网营销有哪些方式
  • wordpress各函数长沙百度首页优化排名
  • 网络维护公司排名seo怎么做最佳
  • 做自媒体需要哪些网站做博客的seo技巧
  • 网站logo怎么做最清楚360广告联盟平台
  • 网站建设加盟今日新闻摘抄10条简短
  • 长春网站建设推荐网诚传媒网站seo排名培训
  • 服务器下载安装seo引擎优化教程
  • 宁波市海曙区建设局网站网站seo优化总结
  • 沈阳制作公司网站商品推广软文800字