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

做特卖的网站上品折扣做引流的公司是正规的吗

做特卖的网站上品折扣,做引流的公司是正规的吗,外贸网站模板 免费,申请企业邮箱需要什么最近因为一些原因频繁使用正则表达式,因为以前系统整理过关于正则表达式的相关知识,所以这里仅记录使用期间遇到的问题。 本文内容基于re包 1. match和search方法的区别 在Python中,re.search和re.match都是用于匹配字符串的正则表达式函数&a…

最近因为一些原因频繁使用正则表达式,因为以前系统整理过关于正则表达式的相关知识,所以这里仅记录使用期间遇到的问题。
本文内容基于re

1. match和search方法的区别

  在Python中,re.searchre.match都是用于匹配字符串的正则表达式函数,但二者在匹配模式上有明显的区别。具体如下:

  • re.match: 该函数只在字符串的开始位置进行匹配。如果开头不匹配,就不会继续匹配下去。其作用类似于从字符串的开位置起寻找能找到符合正则表达式模式的子串。
  • re.search: 该函数会在整个字符串中搜索,直到找到一个匹配的子字符串。其作用类似于从完整的字符串中找到与正则表达式完整匹配的子串。

代码举例如下:

import re
rule=r'(ab|cd).*(ef|gh)' #以ab或cd开头,以ef或gh结尾的字符串
str1='abef'
str2="dcabefabef"
str3="abxyefabstefsc"
print(re.match(rule,str1)) 
print(re.match(rule,str2)) 
print(re.match(rule,str3)) 
print(re.search(rule,str1)) 
print(re.search(rule,str2))
print(re.search(rule,str3)) 

其代码执行结果如下:

<re.Match object; span=(0, 4), match='abef'>
None
<re.Match object; span=(0, 12), match='abxyefabstef'>
<re.Match object; span=(0, 4), match='abef'>
<re.Match object; span=(2, 10), match='abefabef'>
<re.Match object; span=(0, 12), match='abxyefabstef'>

从执行结果中可以发现,这两个方法的返回类型是一样的。
另外,使用^$可以验证完整的字符串是否符合正则表达式规定的模式。具体举例如下:

rule=r'^(ab|cd).*(ef|gh)$' #以ab或cd开头,以ef或gh结尾的字符串
str1='abef'
str2="dcabefabef"
print(re.match(rule,str1)) 
print(re.match(rule,str2)) 
print(re.search(rule,str1)) 
print(re.search(rule,str2))

其执行结果如下:

<re.Match object; span=(0, 4), match='abef'>
None
<re.Match object; span=(0, 4), match='abef'>
None
2. 利用正则表达式实现某些字符必须出现某些字符不能出现的效果

  组合使用零宽断言可以实现利用利用正则表达式实现某些字符必须出现某些字符不能出现的效果。具体举例如下:

rule=r'^(?=.*(ab|cd))(?!.*xy).*$' #ab或cd必须出现,且不能包含xy
str1="132ab23re"
str2="sefeabsefewxyseid"
str3="xyseqeqab"print(re.match(rule,str1))
print(re.match(rule,str2))
print(re.match(rule,str3))

其结果如下:

<re.Match object; span=(0, 9), match='132ab23re'>
None
None

但是在使用这种方式的时候要注意一点(ab|cd)的后面不要添加.*, 这个需要放到xy的前面,否则实现不了同样的效果,展示如下:

import rerule=r'^(?=.*(ab|cd).*)(?!xy)$'
str1="132ab23re"
str2="sefeabsefewxyseid"
str3="xyseqeqab"print(re.match(rule,str1))
print(re.match(rule,str2))
print(re.match(rule,str3))

其执行结果如下:

None
None
None

从结果中我们可以看到,str1和str2是符合要求但结果并没有匹配上。
另外,在这种情况下^$的使用也需要注意,如果不添加这两种断言,结果可能也是错误的。展示如下:

import rerule=r'(?=.*(ab|cd))(?!.*xy)'
str1="132ab23re"
str2="sefeabsefewxyseid"
str3="xyseqeqab"print(re.match(rule,str1))
print(re.match(rule,str2))
print(re.match(rule,str3))

其结果如下:

<re.Match object; span=(0, 0), match=''>
None
None
http://www.hkea.cn/news/336154/

相关文章:

  • 做网站的艰辛免费个人网站申请
  • 网站改版需要多久网站设计与制作毕业论文范文
  • 深圳横岗网站建设网站建设的推广渠道
  • 有没有什么网站免费做名片2023年新闻小学生摘抄
  • 新网金商网站外链查询工具
  • 网站建设的进度竞价托管选择微竞价
  • 网站快速网站推广怎么做一个公司网站
  • 旅游网站模板htmlseo品牌优化整站优化
  • 方圆网站建设aso优化重要吗
  • 做购实惠网站的意义好用的搜索引擎有哪些
  • 怎么把自己笔记本做服务器做个网站搭建网站基本步骤
  • jeecms做企业网站成都网站建设公司排名
  • 沈阳招聘网站开发地推项目平台
  • 798艺术区成都seo达人
  • 平度网站建设抖音代运营收费详细价格
  • 株洲网站优化找哪家seo优化的价格
  • 找印度人做网站sem竞价推广公司
  • 山西网站推广公司网站关键词优化怎么弄
  • 微信分销是什么重庆优化seo
  • 武汉企业网站推广方案永久免费无代码开发平台网站
  • 网站开发岗位群怎样推广产品
  • 桐城市美丽乡村建设专题网站石家庄整站优化技术
  • 北京建网站的公司哪个比较好郑州seo价格
  • 进空间的网站网络营销常见的工具
  • wordpress发文章的id怎么不连续如何做好搜索引擎优化工作
  • 交互式网站如何做seo推广软件排名
  • 西部建设网站惠州seo排名优化
  • 做环球资源网站有没有效果2024百度下载
  • 织梦 安装网站网站搭建需要多少钱
  • 做网站购买备案域名性价比高seo的排名优化