一、引言
正则表达式是含有文本和特别字符的字符串,这些文本和特别字符描述的模式可以识别各种字符串。
正则表达式的强大之处在于特殊符号的应用,特殊符号定义了字符集合、子组匹配,模式重复次数。。。正是这些特殊符号是的一个正则表达式可以匹配字符串集合而不是一个字符串
二、特殊符号和字符
1.用管道(|)符号匹配多个正则表达式模式
例子》bat|bet|bit   匹配:bat、bet、bit
2.匹配任意一个单个的字符(.)
点字符(.)匹配除去换行符以外的任意一个单一字符
例子:f.o  匹配f和o之间的任何字符:foo、fro、f#o
.end  匹配在字符串end前面的任意一个字符
注意;如何匹配句号或句号:必须使用‘\’进行转义
3、从字符串的开头或者结尾或者单词边界开始匹配(^/$/\b/\B)
例子:^From    匹配任何以From开始的字符串
          end$       匹配任何以end结束的字符串
如果你想匹配这两个字符中的任何一个 你都要使用反斜杠进行转义:“\$$”
 \b and \B用来匹配单词边界。\b匹配的是一个单词边界,与之对应的一定在一个模式一定在一个单词的开头,不论这个单词前面是否有字符串。\B匹配出现在一个单词中间的模式
例子: \bthe   匹配任何以‘the’开始的字符串
           \bthe\b   仅仅匹配the
           \Bthe    任意包含‘the’但是不以‘the’开头
4、创建字符类( [ ] )
b[aeiu]t  匹配 bat,bet,bit,but
[cr][23][o2];匹配第一个字符是c或者r,第二是2或者3.。。
5、指定范围(-)和否定(^)
在[]中一对符号中间的连字符(-)表示一个字符的范围:例如A-Z,0-9.另外如果在左括号上加一个(^)表示不匹配指定的字符集里的任意字符
例子 z.[0-9]     匹配字符‘z’,加任意字符,然后是一个十进制数字
[r-u][abn-y][us]
[^abc]     不匹配abc
6.使用闭包操作符(*,+,?,{})实现多次出现、重复匹配
*:匹配他左边的那个正则表达式出现零次或者零次以上
+:匹配他左边的那个正则表达式至少出现一次
?:匹配他左边的那个正则表达式出现零次或者一次
{}:花括号内可以使单个值也可以是一对值:
{N}:表示匹配N次出现  {M,N}:表示匹配M次到N次出现
例子:[dn]ot?:  do,no,dot,not   
     [0-9]{17,18}   表示17或者18位的数字表示
    </?[^>]+>     匹配所有合法的HTML字符串
7、特殊字符表示、字符集
‘\d’可以表示0-9这个范围的十进制数字,
‘\w’表示整个字符数字的数字集相当于“A-Za-z0-9"的简写     "\s"表示空白字符    这个字符的大写表示不匹配
例子:
\w+-\d+   一个有字母或数字组成的字符串,两部分中间有连字符连接
\w+@\w+.com   类似  XXX@yyy。com
8、用圆括号组建组
一个圆括号和一个正则表达式在一起时可以实现以下任意一个(两个)功能:
a.对正则表达式进行分组
b.匹配子组

正则表达式 ——python 基础的更多相关文章

  1. python基础语法及知识点总结

    本文转载于星过无痕的博客http://www.cnblogs.com/linxiangpeng/p/6403991.html 在此表达对原创作者的感激之情,多谢星过无痕的分享!谢谢! Python学习 ...

  2. Python基础(12)--模块

    本文地址:http://www.cnblogs.com/archimedes/p/python-modules.html,转载请注明源地址. 模块简介 如果你退出 Python 解释器重新进入,以前创 ...

  3. python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。

    本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...

  4. 十七. Python基础(17)--正则表达式

    十七. Python基础(17)--正则表达式 1 ● 正则表达式 定义: Regular expressions are sets of symbols that you can use to cr ...

  5. python基础之坑爹正则表达式

    python基础之坑爹正则表达式 概述 re模块就是python语言中的正则表达式,拆出来单独写一条blog是因为正则表达式本身就是比较庞大的知识,写具体些让自己以后方便查找. IP: ^(25[0- ...

  6. Python基础+Pythonweb+Python扩展+Python选修四大专题 超强麦子学院Python35G视频教程

    [保持在百度网盘中的, 可以在观看,嘿嘿 内容有点多,要想下载, 回复后就可以查看下载地址,资源收集不易,请好好珍惜] 下载地址:http://www.fu83.cc/ 感觉文章好,可以小手一抖 -- ...

  7. Python基础:序列(字符串)

    一.概述 字符串 类似于C中的字符数组(功能上更像C++中的string),它是由一个个 字符 组成的序列.与C/C++不同的是,Python中没有 字符 这个类型,而是用 长度为1的字符串 来表示字 ...

  8. Python基础教程【读书笔记】 - 2016/7/31

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第十波:第10章  充电时刻 Python语言的核心非常强大,同时还提供了更多值得一试的工具.Python的标准安装包括 ...

  9. python基础教程

    转自:http://www.cnblogs.com/vamei/archive/2012/09/13/2682778.html Python快速教程 作者:Vamei 出处:http://www.cn ...

随机推荐

  1. STM32下载显示target dll has been cancelled

    使用MDK 4.74向STM32下载时出现各种错误,而且时隐时现, Internal command error.Error:Flash download failed. Target DLL has ...

  2. HibernateDaoSupport 源码

    package org.springframework.orm.hibernate3.support; import org.hibernate.HibernateException; import  ...

  3. Motorola C118修改滤波器组件

    所需工具: 热风枪.恒温焊台.镊子.助焊膏.锡丝.滤波器组件 关于怎么使用热风枪拆屏蔽盖将在后期更新视频,以下为修改滤波器流程.以下热风枪设置温度只针对快克957DW(不同品牌风枪和型号可能会有温差) ...

  4. .NET项目框架(转)

    摘要:本文描述了在用VS.NET进行B/S开发时采用的框架结构,一般建立类库项目和Web项目,在Web基本aspx页面类中调用类库中方法,同时在aspx页面类中不需要写任何对数据库操作的SQL代码,便 ...

  5. 偶遇makeblock

    上周出去吃饭在公交站牌上看到一家叫“创客工场”的公司在打招聘广告,当时在想这公司有钱啊,广告都打到这儿了,也没细想让韩总扫了一下他们的二维码,回来搜了一下这个公司,我靠,是做开源硬件的:再一看各种机器 ...

  6. node 学习笔记

    以下笔记默认安装完成node 及npm 1.安装express 新版本的express-generator已经独立出来,全局安装这个包就ok. npm install express-generato ...

  7. IOS 作业项目(3) 霓虹灯效果

    先上效果图 #import "CHViewController.h"@interface CHViewController (){    int i;    int j;}@pro ...

  8. 禁止VMware用户在系统里删除网卡的操作的方法

    点击选项-常规-配置参数,如下图所示:   8)点击“添加行”,在新的栏目中,左栏输入:devices.hotplug,右边栏输入:false

  9. Android WindowManager悬浮窗:不需要申请权限实现悬浮

     Android WindowManager悬浮窗:不需要申请权限实现悬浮 附录文章1介绍了Android平台上的悬浮窗WindowManager,WindowManager悬浮窗可以悬浮在And ...

  10. HDU 5820 (可持久化线段树)

    Problem Lights (HDU 5820) 题目大意 在一个大小为50000*50000的矩形中,有n个路灯.(n<=500000) 询问是否每一对路灯之间存在一条道路,使得长度为|x1 ...