今天把之前学的正则表达式好好总结总结。

  一、元字符

  . :  .表示可以匹配任意一个字符

  \d  :  \d表示可以匹配任意一个数字

  \D  : \D表示可以匹配任意一个非数字

  \s  :  \s表示可以匹配任意一个空白字母

  \S : \S表示可以匹配任意一个非空白字母

  \w : \w表示可以匹配任意一个字符

  \W: \W表示可以匹配任意一个非字符

  []  : []表示可以匹配括号中的任意的一个字符  例:[abc] , [a-z] , [^ab]

  ^  : ^表示只匹配字符串的开始部分     例:'^fdsfs'

  $  : $表示只匹配字符串的末尾部分      例:'fdsfs$'

  *  : *表示重复上一个字符0次或者多次

  +  : +表示重复上一个字符1次或者多次

  ?   : ?表示重复上一个字符0次或者1次

  {m,n} :{m,n}表示重复次数,最小重复m次,最大重复n次。  还可以{n}这么用,表示重复n次

  非贪婪模式: 表示匹配时进行最短匹配。 用法为:在重复符后面添加一个?

  二、常用函数

  re.compile(pattern)  有一个参数表示模式串,也就是匹配规则。返回一个对象,通过对象可以调用相关函数。 函数的作用是将模式串编译,可以更快的匹配

  re.match(pattern , str) 有两个参数,第一个表示模式串,第二个表示要匹配的字符串。开始部分匹配成功,返回一个对象

  re.search(pattern, str) 有两个参数,第一个表示模式串,第二个表示要匹配的字符串。任意部分匹配成功,返回一个对象

  re.findall(pattern, str) 有两个参数,第一个表示模式串,第二个表示要匹配的字符串。将所有匹配的字段保存到列表中,返回列表

  re.sub(pattern,replace,str) 有三个参数,第一个表示模式串,第二个是要替换的字符串,第三个表示要被替换的字符串。返回列表。函数用于匹配要替换的字符串

  re.subn 功能和sub类似,多一个返回值,为替换的个数

  re.split(pattern,str) 有两个参数,第一个表示模式串,第二个表示要被分离的字符串。

  re.I  属性,表示忽略大小写

  re.M  属性,表示多行匹配

  re.S  属性,表示可以匹配不可见字符

Python学习笔记——正则表达式的更多相关文章

  1. [Python学习笔记]正则表达式总结

    常用缩写字符及其含义表格查询 缩写字符分类 含义 \d 0-9的任意数字 \D 除0-9的数字以外的任何字符 \w 任何字母.数字或下划线字符(可以认为是匹配"单词"字符) \W ...

  2. Python学习笔记——正则表达式入门

    # 本文对正则知识不做详细解释,仅作入门级的正则知识目录. 正则表达式的强大早有耳闻,大一时参加一次选拔考试,题目就是用做个HTML解析器,正则的优势表现得淋漓尽致.题外话不多讲,直接上干货: 1. ...

  3. python学习笔记----正则表达式

    正则: regular expression 常用的场景: #正则的包 >>> import re #match:开头匹配,匹配到,返回一个匹配对象,否则返回None >> ...

  4. python学习笔记——正则表达式regex

    1 概述 1.1 定义 本质是由一系列字符和特殊符号组成的字串,用来表示一定规则的某一类字符串. 1.2 特点 正则表达式是一个独立的技术,其在多种编程语言中使用. 在python语言中的正则表达式模 ...

  5. Python学习笔记基础篇——总览

    Python初识与简介[开篇] Python学习笔记——基础篇[第一周]——变量与赋值.用户交互.条件判断.循环控制.数据类型.文本操作 Python学习笔记——基础篇[第二周]——解释器.字符串.列 ...

  6. Python学习笔记(十一)

    Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...

  7. Python学习笔记,day5

    Python学习笔记,day5 一.time & datetime模块 import本质为将要导入的模块,先解释一遍 #_*_coding:utf-8_*_ __author__ = 'Ale ...

  8. 【目录】Python学习笔记

    目录:Python学习笔记 目标:坚持每天学习,每周一篇博文 1. Python学习笔记 - day1 - 概述及安装 2.Python学习笔记 - day2 - PyCharm的基本使用 3.Pyt ...

  9. Python 学习笔记(上)

    Python 学习笔记(上) 这份笔记是我在系统地学习python时记录的,它不能算是一份完整的参考,但里面大都是我觉得比较重要的地方. 目录 Python 学习笔记(上) 基础知识 基本输入输出 模 ...

随机推荐

  1. PowerDesigner连接Oracle数据库建表序列号实现自动增长

    原文:PowerDesigner连接Oracle数据库建表序列号实现自动增长 创建表就不说了.下面开始介绍设置自动增长列. 1 在表视图的列上创建.双击表视图,打开table properties — ...

  2. (转)java性能调优

    本文转自:http://blog.csdn.net/lilu_leo/article/details/8115612 一.类和对象使用技巧 1.尽量少用new生成新对象 用new创建类的实例时,构造雨 ...

  3. .NET 框架 (转载)

    转载:http://www.tracefact.net/CLR-and-Framework/DotNet-Framework.aspx .NET框架 三年前写的<.NET之美>的第六章,现 ...

  4. Size Classes with Xcode 6

    转载自 http://www.cocoachina.com/ios/20141015/9919.html 总结:通过在Size Classes不同的模式下设置,可以实现不同设备在横屏.竖屏下UIVie ...

  5. ubuntu下安装Ming的教程

    Ming是一个操纵swf(flash movice)的C库,支持php. ruby. python等语言. 重要提示: 在安装Ming之前,应该准备好你的系统,特别是Linux/Unix系统,如果你对 ...

  6. VC 6.0 LNK2005 错误 处理

    造成LNK2005错误主要有以下几种情况: 1.重复定义全局变量.可能存在两种情况: A.对于一些初学编程的程序员,有时候会以为需要使用全局变量的地方就可以使用定义申明一下.其实这是错误的,全局变量是 ...

  7. [Codeforces667A]Pouring Rain(数学,几何)

    题目链接:http://codeforces.com/contest/667/problem/A 题意:一个杯子里有水,一个人在喝并且同时在往里倒.问这个人能不能喝完,多久能喝完. 把相关变量都量化成 ...

  8. [HDOJ1698]Just a Hook(线段树,区间更新)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1698 陈题,更新后查询所有叶节点的和.撸一遍模版,形成自己的风格. #include <algo ...

  9. MySQL select into 和 SQL select into

    现在有张表为student,我想将这个表里面的数据复制到一个为dust的新表中去,虽然可以用以下语句进行复制,总觉得不爽,希望各位帮助下我,谢谢.  answer 01: create table d ...

  10. HDU 1078 FatMouse and Cheese【记忆化搜索】

    题意:给出n*n的二维矩阵,和k,老鼠每次最多走k步,问老鼠从起点(0,0)出发,能够得到的最大的数(即为将每走过一点的数都加起来的和最大)是多少 和上一题滑雪一样,搜索的方向再加一个循环 #incl ...