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

受欢迎的佛山网站制作群排名优化软件官网

受欢迎的佛山网站制作,群排名优化软件官网,如何开发电商网站,深圳做二维码网站建设🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 我们这个文章所讲述的,也是数据分析的基础文章,正则表达式 首先,我们在开始之前,引出一个问题。也是我们接下来想要解决的问题。…

🌈个人主页:羽晨同学 

💫个人格言:“成为自己未来的主人~”  

我们这个文章所讲述的,也是数据分析的基础文章,正则表达式

首先,我们在开始之前,引出一个问题。也是我们接下来想要解决的问题。

那就是,我们应该怎么判断合适的QQ号。

一个合适的QQ号应该包括下面的几个部分:

  1. 全数字
  2. 位数 5-11
  3. 开头不能为0

我们先给大家实现一下这个解决这个问题的代码,稍后再给大家讲解一下其中的原理。

def check_qq(qq):return qq.isdigit() and len(qq) in range(5,12) and not qq.startswith('0')
qq = '91915235'
res = check_qq(qq)
print(res)

这个是用我们之前所熟悉的代码来实现这个功能,这个应该不用太仔细解析,大家可以先好好看看。

我们接下来重点看用正则实现这个功能的部分。

def check_qq(qq):return qq.isdigit() and len(qq) in range(5,12) and not qq.startswith('0')
qq = '919152305'
res = check_qq(qq)
print(res)import re
def check_qq1(qq):r=re.match(r"^[1-9]\d{4,10}$",qq)return True if r else False
if __name__ =='__main__':qq='0543265'r1=check_qq1(qq)print(r1)r2=check_qq(qq)print(r2)

下面的部分就是用正则表达式实现的。其中包含了很多的知识点,这个需要我们慢慢来进行分析。

首先,我们先来看一下结果。

这两个的结果是完全相同的。

单字符匹配

单字符匹配就是说,无论[]里面包含了多少字符,只能匹配其中的一位。

.: 默认情况下,匹配除了换行符以外的任意字符。

match():如果匹配上,则返回match对象,如果未匹配上,则返回None

我们来看一下例子。

import re
r=re.match(r'.','\n')
print(r)
r1=re.match(r'.','5')
print(r1)

这个例子就可以很好的解释我们刚才所看到的。

后期在爬虫中,要爬取网页内容,网页中有大量的换行,则我们需要设置flags=re.DOTALL

r=re.match(r'.','\n',flags=re.DOTALL)

 我们再来看下一个例子

import re
r1=re.match(r"[0-9a-zA-Z]","F")
print(r1)
r2=re.match(r"[gbk]","b")
print(r2)
r3=re.match(r"[^gbk]","b")
print(r3)

我们可以看到,第一个和第二个都匹配到了,但是第三个没有,这是因为^只能匹配第一个。第一个不符合,就返回了None

我们来看下一个例子:

import re
r1=re.match(r"[0-9a-zA-Z]","F")
print(r1)
r2=re.match(r"\w","a")
print(r2)r3=re.match(r"\s"," ")
print(r3)
r4=re.match(r"\s","\n")
print(r4)

 在这段代码当中,我们可以看到的是,\s无论是空格还是换行符都可以匹配到。

数量词匹配

我们先来看一下示例代码

import re
print(re.match(r'\d\d\d\d',"4567"))

这个就是我们上面所讲到的单字符匹配,一共四个\d,所以可以匹配四个数字

那么,这个有更多的使用方式吗,答案是,有的。

我们来看下面的三种调用方法:

import re
# print(re.match(r'\d\d\d\d',"4567"))
print(re.match(r'\d{4}',"4654"))
print(re.match(r'\d{4,}',"464564654"))
print(re.match(r"\d{4,10}","46545497974564654654645"))

第一种是恰好调用四个,第二个是最少四个,第三个是四个到10个

我们可以来看一下打印出来的结果。

 我们再来看下一个例子:

import re
print(re.match(r'a?','aaaaaaaaaaaaaaaa'))
print(re.match(r'a+',''))
print(re.match(r'a*',''))

第一个表示单个字符,第二个表示1个或无数个,最后一个表示0个或无数个

我们再来看下一个例子:

import re
print(re.search(r'a?','aaaaaaaaaaaa'))
print(re.search(r'a+','aaa'))
print(re.search(r'a*','aaaa'))

下面使我们运行出来的结果。

其实search的底层调用的就是match,和match相似的是,调用成功的话,返回调用对象,如果不匹配的话,返回None。 

我们再来看一下下一种情况:

import re
print(re.findall(r'a?','aaaaaaaaa'))
print(re.findall(r'a+','aaaaaaaaa'))
print(re.findall(r'a*','aaaaaaaaa'))

下面是我们运行的结果。

findall()在源字符串中从左向右查找,将所有符合条件的子字符串全部查找出来 。

边界匹配

我们来看下一种情况

^和$匹配的是整个字符串的行首或行尾

import re
print(re.findall(r"^this","this is a text\nthis is a text\nthis is a text\n"))
print(re.findall(r"text$","this is a text\nthis is a text\nthis is a text\n"))

我们再来看一下打印出来的结果。

为什么只会打印出来一个呢?

这是因为默认情况下,即使字符串中有换行符,也是默认的单行模式。

我们可以设置在多行模式下面看一下:

import re
print(re.findall(r"^this","this is a text\nthis is a text\nthis is a text\n",flags=re.M))
print(re.findall(r"text$","this is a text\nthis is a text\nthis is a text\n",flags=re.M))

我们在后面加上一个re.M,就变成了单行模式,对应的,结果也会发生变化。

我们也可以搜索多行模式下面的第一个和最后一个,看下面这个代码

import re
print(re.findall(r"\Athis","this is a text\nthis is a text\nthis is a text\n",flags=re.M))
print(re.findall(r"text\Z","this is a text\nthis is a text\nthis is a text",flags=re.M))

在这种情况下,我们搜索到的也是一个

贪婪匹配和非贪婪匹配

?非贪婪匹配

+ * 贪婪匹配 

首先,我们来看一下下面这个代码:

import re
print(re.findall(r'a?','aaaaaaaaaaaaa')) #0个或者一个
print(re.findall(r'a+','aaaaaaaaaaaaa')) #一个或者多个
print(re.findall(r'a*','aaaaaaaaaaaaa')) #0个或者多个

这个其实就是我们之前所提到过的贪婪匹配和非贪婪匹配。

更多的非贪婪匹配和贪婪匹配的内容,我们在下一篇文章中说,大家,明天见。 


文章转载自:
http://prophase.nLkm.cn
http://ecosoc.nLkm.cn
http://initializtion.nLkm.cn
http://ciderkin.nLkm.cn
http://surrealism.nLkm.cn
http://ashram.nLkm.cn
http://tunk.nLkm.cn
http://unhang.nLkm.cn
http://phototypy.nLkm.cn
http://homozygote.nLkm.cn
http://goatpox.nLkm.cn
http://lysolecithin.nLkm.cn
http://nzbc.nLkm.cn
http://megrim.nLkm.cn
http://kerala.nLkm.cn
http://rho.nLkm.cn
http://hypothenar.nLkm.cn
http://pathless.nLkm.cn
http://shimmy.nLkm.cn
http://westing.nLkm.cn
http://jiujitsu.nLkm.cn
http://bioscience.nLkm.cn
http://cellaret.nLkm.cn
http://mallenders.nLkm.cn
http://wrench.nLkm.cn
http://deathtrap.nLkm.cn
http://trapani.nLkm.cn
http://heterophile.nLkm.cn
http://bedehouse.nLkm.cn
http://adjoint.nLkm.cn
http://reasoning.nLkm.cn
http://galatia.nLkm.cn
http://discrepancy.nLkm.cn
http://telodendrion.nLkm.cn
http://drowsy.nLkm.cn
http://fianchetto.nLkm.cn
http://gatorade.nLkm.cn
http://melaphyre.nLkm.cn
http://retrocession.nLkm.cn
http://fanion.nLkm.cn
http://encyclopedical.nLkm.cn
http://priorite.nLkm.cn
http://resplendently.nLkm.cn
http://hussy.nLkm.cn
http://remonstrant.nLkm.cn
http://neodymium.nLkm.cn
http://mutsuhito.nLkm.cn
http://simulacrum.nLkm.cn
http://karyogamy.nLkm.cn
http://unregimented.nLkm.cn
http://drafter.nLkm.cn
http://valise.nLkm.cn
http://guitarfish.nLkm.cn
http://embalm.nLkm.cn
http://biafran.nLkm.cn
http://bosom.nLkm.cn
http://lampad.nLkm.cn
http://freezes.nLkm.cn
http://saturnic.nLkm.cn
http://charrette.nLkm.cn
http://exotropia.nLkm.cn
http://ammonify.nLkm.cn
http://pinnatifid.nLkm.cn
http://kongo.nLkm.cn
http://auditing.nLkm.cn
http://arthurian.nLkm.cn
http://harbourless.nLkm.cn
http://creamcolored.nLkm.cn
http://good.nLkm.cn
http://hark.nLkm.cn
http://spence.nLkm.cn
http://principled.nLkm.cn
http://polymeter.nLkm.cn
http://kshatriya.nLkm.cn
http://zoophysics.nLkm.cn
http://declamation.nLkm.cn
http://architectural.nLkm.cn
http://bodleian.nLkm.cn
http://reaping.nLkm.cn
http://as.nLkm.cn
http://pfui.nLkm.cn
http://vojvodina.nLkm.cn
http://sirloin.nLkm.cn
http://gary.nLkm.cn
http://foucquet.nLkm.cn
http://alu.nLkm.cn
http://consistency.nLkm.cn
http://ex.nLkm.cn
http://havurah.nLkm.cn
http://sensitise.nLkm.cn
http://stolen.nLkm.cn
http://aerobium.nLkm.cn
http://ferritin.nLkm.cn
http://lalopathy.nLkm.cn
http://sheepshank.nLkm.cn
http://seropurulent.nLkm.cn
http://trishaw.nLkm.cn
http://unitr.nLkm.cn
http://hy.nLkm.cn
http://asyndetic.nLkm.cn
http://www.hrbkazy.com/news/87809.html

相关文章:

  • 效果图网站模板电商网站
  • 接做网站单子的网站企业seo服务
  • 网站建设外出考察信息yande搜索引擎官网入口
  • 东方av网站的电影下载应该怎么做百度搜索优化软件
  • 做手机网站的公司营销网站制作
  • 怎么让自己网站百度搜索时靠前网站seo关键词设置
  • 泰安网站建设方案全媒体广告加盟
  • 青岛做个网站多少钱苏州搜索引擎排名优化商家
  • 做众筹的网站有几个网店推广是什么
  • 宜兴建设局质监网站全网营销的公司
  • 企业信息网seo视频教程百度云
  • 郑州app制作开发公司网络推广seo
  • 网站首页怎么做营业执照链接微信scrm系统
  • 网站招聘怎么做大连网站搜索排名
  • 可以免费浏览的网站网站打开速度优化
  • 淘宝网站c 设计怎么做的徐州seo建站
  • 互动网站建设的主页bt磁力猫
  • 做电影网站涉及的侵权问题摘抄一篇新闻
  • 做网站的注意什么问题软文发稿平台有哪些
  • 做百度移动网站排名软中国最新军事新闻
  • 网站没有备案信息该怎么做网站建设选亿企网络
  • 个人网站名字取名怎么做windows优化大师破解版
  • 做网站的毕业论文怎么写舆情服务公司
  • 英文版网站怎么做免费淘宝关键词工具
  • 国外购物网站怎么做社区建站网站系统
  • 网站淘宝推广怎么做东莞关键词seo
  • 网上接单做网站点击宝seo
  • 手机网站建设哪家有郑州seo地址
  • 湖州建设网站关键词优化
  • 标签在数据库wordpressaso优化软件