文档章节

python 正则表达式笔记1

s
 showqing
发布于 2016/08/04 22:58
字数 691
阅读 0
收藏 0
点赞 0
评论 0

(1)  import re

(2) .号(点号)表示出了换行符之外的所有字符

re.search(r'love','i love you')

(3) 如果要匹配"."(点号)加上反斜杠"\",如:

re.search('\.','i love you.com')
<_sre.SRE_Match object; span=(10, 11), match='.'>

\d可以匹配一个数字,\w可以匹配一个字母或数字

(4) 简易匹配ip地址

re.search(r'\d\d\d.\d\d\d.\d\d\d.\d\d\d','192.168.111.222')

(5)字符类[]

re.search(r'[aeiou]','I love you')

_sre.SRE_Match object; span=(3, 4), match='o'>

(6)"-" (下划线)表示范围

re.search(r'[0-9]','I love 123.com')

<_sre.SRE_Match object; span=(7, 8), match='1'>

(7)大括号{}里面的数字表示大括号前面的字符重复的次数,如:

re.search(r'ab{3}c','hello abbbcd')

<_sre.SRE_Match object; span=(6, 11), match='abbbc'>

 

3到10个b都会匹配

re.search(r'ab{3,10}c','abbbbc')

<_sre.SRE_Match object; span=(0, 6), match='abbbbc'>

 

(8)匹配IP地址:

re.search(r'(([01]{0,1}\d{0,1}\d{0,1}|2[0-4]\d||25[0-5])\.){3}([01]{0,1}\d{0,1}\d{0,1}|2[0-4]\d||25[0-5])','192.168.1.1')
(9)A|B 匹配表达式A或B,例如

re.search('L(i|y)','Li')

(10)^ 匹配输入字符串的开始位置

re.search(r'I lov','I love you')

(11)$匹配输入字符串的结束为止

re.search(r'ok$','i loe ok')

(12)\跟上数字,有两种表达方式,

       12.1 数字在1-99范围内表示引用序列对应词组所匹配的字符串

          re.search(r'(Lucy)\1','LucyLucy')

         <_sre.SRE_Match object; span=(0, 8), match='LucyLucy'>

        re.search(r'(Lucy)and(Lily)\2','LucyandLilyLily')

        <_sre.SRE_Match object; span=(0, 15), match='LucyandLilyLily'>

      12.2 如果跟着的数字是0开头或者3位的数字的长度,那么它是一个八进制数,八进制数字对于的ascii所对应的字符

       re.search(r'(Lucy)\060','helloLucy0')

      <_sre.SRE_Match object; span=(5, 10), match='Lucy0'>

     re.search(r'(jackson)\141','jacksona')

    <_sre.SRE_Match object; span=(0, 8), match='jacksona'>

(13)[]字符类里面的内容,都当成普通的字符(除了几个特殊的字符,-:表示范围;\:字符串的转义符)

    13.1  re.search(r'[.]','hello baidu.com')

   <_sre.SRE_Match object; span=(11, 12), match='.'>

   13.2 特殊字符-       re.findall(r'[a-z]','Hello')

      ['e', 'l', 'l', 'o']

   13.3 特殊字符\  

        re.findall(r'[\n]','love you forever\n')

       ['\n']

   13.4 特殊字符,脱字符^

     13.4.1 表示取反(放在前面),表示不包括其中的任意字符

      re.findall(r'[^a-z]','Love you!')

       ['L', ' ', '!']

      还例如:

       re.search(r'[^"]+\.jpg','"http://a.jpg')

       <_sre.SRE_Match object; span=(1, 13), match='http://a.jpg'>

    13.4.2 表示脱字符本身(放在后面)

     re.findall(r'[a-z^]','My name is jack')

    ['y', 'n', 'a', 'm', 'e', 'i', 's', 'j', 'a', 'c', 'k']

 

     14.字符重复{m,n},例如

    re.search(r'Love{3}','Loveee you')

   <_sre.SRE_Match object; span=(0, 6), match='Loveee'>

  re.search(r'(love){3}','lovelovelovey')

<_sre.SRE_Match object; span=(0, 12), match='lovelovelove'>

 

15.正则表达式默认使用贪婪的模式:只要符合的条件下,会尽可能多的去匹配

s='<html><title>I love you</title></html>'

re.search(r'<.+',s)

_sre.SRE_Match object; span=(0, 38), match='<html><title>I love you</title></html>'>

  15.1 启用飞贪婪模式

     re.search(r'<.+?>',s)

    <_sre.SRE_Match object; span=(0, 6), match='<html>'>

 

© 著作权归作者所有

共有 人打赏支持
s
粉丝 1
博文 39
码字总数 7278
作品 0
南京
她们不一样!python小白刚学会python竟然爬取了网上所有小姐姐的照片

如今想学python的人越来越多,无论是专业的程序员还是业余爱好者,都对python情有独钟。世界上值得学习的技能有很多,但是如果你要问我推荐哪一个,那么我会推荐一门编程语言,比如python。如...

Python学习 ⋅ 06/06 ⋅ 0

超详细Python正则表达式操作指南(re使用),一

Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。Python 1.5之前版本则是通过 regex 模块提供 Emecs 风格的模式。Emacs 风格模式可读性稍差些,而且功能也不强,因此编...

Python雁横 ⋅ 05/26 ⋅ 0

Python课堂笔记之正则表达式

正则表达式的基本使用 re.match(r’xxx’, 匹配的字符串) 尝试从字符串的起始位置匹配一个模式匹配成功re.match方法返回一个匹配的对象,否则返回None。可以使用group(num) 或 groups() 匹配...

我是小谷粒 ⋅ 06/22 ⋅ 0

Python语言re模块学习笔记

Python通过re模块来使用正则表达式(regex)的思想。 re模块的match、search方法构造出匹配对象,match是匹配,search是查找,这个对象有group,groups方法。 re模块的findall、finditer方法...

红蜻蜓q ⋅ 05/11 ⋅ 0

Python处理正则表达式超时的办法

title: Python处理正则表达式超时的办法 tags: [python3, 正则表达式超时, re模块] date: 2018-04-27 21:40:21 categories: Python keywords: python3, 正则表达式, re模块, linux信号 最近在...

PigPeek ⋅ 04/27 ⋅ 0

【Python】Python正则表达式使用指导

正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分。正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十...

p柯西 ⋅ 06/15 ⋅ 0

Django学习笔记----快速入门

上一篇>Django学习笔记----环境搭建基于Windows 开始第一个Django项目 进入Cmder, 进入想创建工程的文件夹, 键入 注意不能选择这样的项目名称, 会于Python已有的模块名称冲突 生成成功后, 可...

fesoncn ⋅ 2017/12/27 ⋅ 0

万方数据库,文献下载的准备,文献信息收集

想批量下载万方数据库的文献,看了一下其html源码不好玩啊. 其一篇文献的下载的链接. 下 载 onclick 事件 onclick 事件会在对象被点击时发生。 请注意, oncli...

东风冷雪 ⋅ 05/23 ⋅ 0

实战(一)之使用自带urllib和re正则表达式获取电影详情页链接

一、关于urllib库 网上urllib库的教程文章非常多而且详细具体,我就不过多叙述和重复了,个人更加倾向于将精力放在实战上,而不是反反复复拷贝教程(其实是因为我懒),来几篇干货参考。 py...

鱼头豆腐文 ⋅ 2017/12/04 ⋅ 0

Python -- 正则表达式

一、python正则表达式包含在 ‘re’模块中 1、导入re模块:import re 2、re.match函数 re.match 从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。 3、r...

朱飞东 ⋅ 06/21 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Kubeflow实战系列:利用TFJob导出分布式TensorFlow模型

介绍 本系列将介绍如何在阿里云容器服务上运行Kubeflow, 本文介绍如何使用TfJob导出分布式模型训练模型。 第一篇:阿里云上使用JupyterHub 第二篇:阿里云上小试TFJob 第三篇:利用TFJob运行...

全部原谅 ⋅ 2分钟前 ⋅ 0

007. 深入JVM学习—老年代

老年代空间的主要目的是用于存储由Eden发送来的对象,一般在经历好几次“Minor GC”还会保存下来的对象,才会被复制到老年代,这样就可以存放更多的对象,同时在老年代中执行GC的次数也相对较...

影狼 ⋅ 3分钟前 ⋅ 0

常见的一些C#开源框架或者开源项目

原:https://blog.csdn.net/qq_27825451/article/details/70666044 Json.NET http://json.codeplex.com/ Json.Net 是一个读写Json效率比较高的.Net框架.Json.Net 使得在.Net环境下使用Json更......

whoisliang ⋅ 4分钟前 ⋅ 0

设计模式基本原理

刚开始接触编程这行的时候看过设计模式,当时感觉学这些模式没有太大的用处,当时也看不太懂。但是随着慢慢接触这一行,经过一段时间的编程以后,再回过头来看设计模式,发现设计模式的确是太...

王子城 ⋅ 7分钟前 ⋅ 0

阿里云全面支持IPv6!一文揽尽4位大咖精彩演讲

摘要: 自从去年11月以来,阿里巴巴高度重视数据中心的网络改造、云产品改造、应用及网络改造等多个维度,经过半年以来的建设,阿里云已经完成了域名解析等关键产品的分析,现在阿里云已经完...

传授知识的天使 ⋅ 18分钟前 ⋅ 0

windows Android sdk 配置

1、下载Android SDK,点击安装,直接默认路径即可! 下载地址:http://developer.android.com/sdk/index.html 2、默认路径安装后,安装完成,开始配置环境变量。 3、打开计算机属性——高级系...

阿豪boy ⋅ 21分钟前 ⋅ 0

bash shell script 简明教程

User <--> bash <--> kernel shell is not kernel or part of kernel various shells: tcsh, csh, bash, ksh find the using shell: echo $SHELL find all the shells: cat /etc/shells what......

mskk ⋅ 23分钟前 ⋅ 0

Service Mesh简史

William Morgan Service Mesh是一个相当新的概念,讲它的“历史”似乎有些勉强。就目前而言,Service Mesh已经在部分企业生产环境中运行了超过18个月,它的源头可以追溯到2010年前后互联网公...

好雨云帮 ⋅ 23分钟前 ⋅ 0

10个免费的服务器监控工具

监控你的WEB服务器或者WEB主机运行是否正常与健康是非常重要的。你要确保用户始终可以打开你的网站并且网速不慢。服务器监控工具允许你收集和分析有关你的Web服务器的数据。 有许多非常好的服...

李朝强 ⋅ 36分钟前 ⋅ 0

压缩工具之zip-tar

zip 支持目录压缩。使用yum安装zip包,使用yum安装unzip包 zip 1.txt.zip 1.txt #将1.txt文件压缩,新生成的压缩文件为1.txt.zip,原文件保留 zip -r 123.zip 123/ #-r对目录操作。将123/目录...

ZHENG-JY ⋅ 36分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部