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

简单设置网站首页上海建网站

简单设置网站首页,上海建网站,江海区建设局网站,上海网站建设建站#x1f308;个人主页#xff1a;羽晨同学 #x1f4ab;个人格言:“成为自己未来的主人~” 我们这个文章所讲述的#xff0c;也是数据分析的基础文章#xff0c;正则表达式 首先#xff0c;我们在开始之前#xff0c;引出一个问题。也是我们接下来想要解决的问题。… 个人主页羽晨同学  个人格言:“成为自己未来的主人~”   我们这个文章所讲述的也是数据分析的基础文章正则表达式 首先我们在开始之前引出一个问题。也是我们接下来想要解决的问题。 那就是我们应该怎么判断合适的QQ号。 一个合适的QQ号应该包括下面的几个部分 全数字位数 5-11开头不能为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):rre.match(r^[1-9]\d{4,10}$,qq)return True if r else False if __name__ __main__:qq0543265r1check_qq1(qq)print(r1)r2check_qq(qq)print(r2) 下面的部分就是用正则表达式实现的。其中包含了很多的知识点这个需要我们慢慢来进行分析。 首先我们先来看一下结果。 这两个的结果是完全相同的。 单字符匹配 单字符匹配就是说无论[]里面包含了多少字符只能匹配其中的一位。 . 默认情况下匹配除了换行符以外的任意字符。 match()如果匹配上则返回match对象如果未匹配上则返回None 我们来看一下例子。 import re rre.match(r.,\n) print(r) r1re.match(r.,5) print(r1) 这个例子就可以很好的解释我们刚才所看到的。 后期在爬虫中要爬取网页内容网页中有大量的换行则我们需要设置flagsre.DOTALL rre.match(r.,\n,flagsre.DOTALL)我们再来看下一个例子 import re r1re.match(r[0-9a-zA-Z],F) print(r1) r2re.match(r[gbk],b) print(r2) r3re.match(r[^gbk],b) print(r3) 我们可以看到第一个和第二个都匹配到了但是第三个没有这是因为^只能匹配第一个。第一个不符合就返回了None 我们来看下一个例子 import re r1re.match(r[0-9a-zA-Z],F) print(r1) r2re.match(r\w,a) print(r2)r3re.match(r\s, ) print(r3) r4re.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(ra?,aaaaaaaaaaaaaaaa)) print(re.match(ra,)) print(re.match(ra*,)) 第一个表示单个字符第二个表示1个或无数个最后一个表示0个或无数个 我们再来看下一个例子 import re print(re.search(ra?,aaaaaaaaaaaa)) print(re.search(ra,aaa)) print(re.search(ra*,aaaa)) 下面使我们运行出来的结果。 其实search的底层调用的就是match和match相似的是调用成功的话返回调用对象如果不匹配的话返回None。  我们再来看一下下一种情况 import re print(re.findall(ra?,aaaaaaaaa)) print(re.findall(ra,aaaaaaaaa)) print(re.findall(ra*,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(rtext$,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,flagsre.M)) print(re.findall(rtext$,this is a text\nthis is a text\nthis is a text\n,flagsre.M))我们在后面加上一个re.M,就变成了单行模式对应的结果也会发生变化。 我们也可以搜索多行模式下面的第一个和最后一个看下面这个代码 import re print(re.findall(r\Athis,this is a text\nthis is a text\nthis is a text\n,flagsre.M)) print(re.findall(rtext\Z,this is a text\nthis is a text\nthis is a text,flagsre.M))在这种情况下我们搜索到的也是一个 贪婪匹配和非贪婪匹配 非贪婪匹配 * 贪婪匹配  首先我们来看一下下面这个代码 import re print(re.findall(ra?,aaaaaaaaaaaaa)) #0个或者一个 print(re.findall(ra,aaaaaaaaaaaaa)) #一个或者多个 print(re.findall(ra*,aaaaaaaaaaaaa)) #0个或者多个 这个其实就是我们之前所提到过的贪婪匹配和非贪婪匹配。 更多的非贪婪匹配和贪婪匹配的内容我们在下一篇文章中说大家明天见。
http://www.dnsts.com.cn/news/79904.html

相关文章:

  • 做网站怎么移动图片wordpress内存耗尽
  • 免费php企业网站小程序源码网免费下载
  • 营销网站建设都是专业技术人员吗怎么推广游戏代理赚钱
  • 可以免费搭建网站吗西安到北京飞机几个小时
  • 广东建设职业技术学院官方网站优化落实新十条措施
  • 社区建立网站seo排名点击器曝光行者seo
  • 六感程序网站建设网页制作工具安其制作方式分 可以分为
  • 网站建设的优势织梦建站和WordPress建站的优缺点
  • 怎么为自己的厂做网站广州市建设集团网站首页
  • 免费不收费网站有哪些广东网站备案查询
  • 网站开发税率是多少首页html模板
  • 网站页面设计大小做网站会员金字塔系统
  • 代理建设网站宁波方太集团网站建设
  • 为代理网站做网站wordpress foxpay
  • 简单个人网站设计网站推广100种方法
  • 佛山英文网站建设怎样学习做网站的编程
  • 网上做翻译兼职网站好网站降权 烦
  • 网站多多网站开发 小程序开发
  • 域名和网站空间相互做解析孝感网站开发的公司电话
  • jsp免费建站系统做网站平台难在哪里
  • 郑州市建设网站达州seo排名
  • 昆明网站建设是什么做网站与网店运营
  • 广东网站建设加工wordpress 分类不显示全文
  • asp技术网站开发案例WordPress批量发布插件
  • 自己做网站不想买空间 自己电脑可以做服务器吗?未成年做网站
  • 网站建设费包括什么用wordpress开发网站模板
  • .net和php哪个做网站好中国制造网网站建设的优势
  • 注册域名后怎么建网站石家庄免费网站建设
  • 龙岩网站建设专家网站建设的软件有哪些
  • 网站建设教程开源代码下载建e网模型下载