Python 正则表达式 总结

这节课讲讲正真使用的技术 — 正真表达式。

文本爬虫

什么是正则表达式

正则表达式这个名词听起来就有一种很官方的感觉,但是它是一个很很很有用的技术。我用语言是不能形容它的。那举个例子好了。下面是一段加密的文本:

sdajksdhfakjldooxxIxxoosdsdsdmknmdsdooxxamxxoodsddjksdjooxxAoboxxoodsddsddkjlooxxSirxxoosjdlsjl

如果你知道上面这段文本的解密规律,就可以知道上面这段文本的真正内容。

* 解密规律:ooxx 真正的内容 xxoo

* 解密:I am Aobo Sir

所以,就算你知道了解密规律,你也需要花一定时间去找,这种事情是可以交个程序去做的,正则表达式做的就是这样的事情。


简单的看看下面的列表

常用符号:*.?(

符号 说明
. 匹配任意字符,\n(换行符)除外
* 匹配前一个字符0次或无限次
? 匹配前一个字符0次或1次
.* 贪心算法。(获取所有符合需求的信息)
.*? 非贪心算法
() 括号内的数据作为结果返回

常见方法:findall()search()sub()

方法 说明
findall() 匹配所有符合规律的内容,返回包含结果的列表
search() 匹配并提取第一个符合规律的内容,返回一个正则表达式对象(object)
sub() 替换符合规律的内容,返回替换的值

请见下一讲:Learning Python008 正则表达式 - 002


参考网站:

http://www.jikexueyuan.com/course/777_2.html?ss=1

Learning Python 008 正则表达式-001的更多相关文章

  1. Learning Python 008 正则表达式-003 sub()方法

    Python 正则表达式 - sub()方法 sub()方法 sub()方法:替换符合规律的内容,返回替换的值 # -?- coding: utf-8 -?- import re secret_cod ...

  2. Learning Python 008 正则表达式-003 search()方法

    Python 正则表达式 - search()方法 findall()方法在找到第一个匹配之后,还会继续找下去,findall吗,就是找到所有的匹配的意思.如果你只是想找到第一个匹配的信息后,就不在继 ...

  3. Learning Python 008 正则表达式-002 findall()方法

    Python 正则表达式 - findall()方法 重点 findall()方法的使用 - 程序讲解 简单的符号的使用 正则表达式的库文件是re,先导入库文件: import re .的使用举例 # ...

  4. 第11.20节 Python 中正则表达式的扩展功能:后视断言、后视取反

    一. 引言 在<第11.19节 Python 中正则表达式的扩展功能:前视断言和前视取反>中老猿介绍了前视断言和前视取反,与二者对应的还有后视断言和后视取反. 二. (?<=-)后视 ...

  5. 第11.19节 Python 中正则表达式的扩展功能:前视断言和前视取反

    一. 引言 在<第11.16节 Python正则元字符"()"(小括号)与组(group)匹配模式>中老猿介绍了组匹配模式的命名组功能及引用组功能,这两者都是组模式的扩 ...

  6. [python] 常用正则表达式爬取网页信息及分析HTML标签总结【转】

    [python] 常用正则表达式爬取网页信息及分析HTML标签总结 转http://blog.csdn.net/Eastmount/article/details/51082253 标签: pytho ...

  7. Python 进阶 - 正则表达式

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

  8. python study - 正则表达式

    第 7 章 正则表达式 7.1. 概览 7.2. 个案研究:街道地址 7.3. 个案研究:罗马字母 7.3.1. 校验千位数 7.3.2. 校验百位数 7.4. 使用 {n,m} 语法 7.4.1. ...

  9. python使用正则表达式文本替换

    2D客户端编程从某种意义上来讲就是素材组织,所以,图片素材组织经常需要批量处理,python一定是最佳选择,不管是win/linux/mac都有一个简单的运行环境 举两个应用场景: 如果不是在某个文件 ...

随机推荐

  1. 转 Oracle 11g服务详细介绍

    转自http://www.cnblogs.com/userWuLiang/archive/2013/04/13/3017900.html Oracle 11g服务详细介绍及哪些服务是必须开启的? 成功 ...

  2. 好久没更了,确实太忙了--dedecms篇

    最近写了一个地方新闻网站,可以看看:www.qiluhuabao.com.模仿www.bashan.com写的 用的是dedecms,只听过,没用过.终于在上周来了一个必须用到cms的项目,现学现卖, ...

  3. 关于数组的初始化memset函数

    关于数组的初始化memset函数 其实memset复制时按bit8个8个的赋值,有兴趣的可以自己百度.

  4. java:Map借口及其子类HashMap二

    java:Map借口及其子类HashMap二 重点:所有的集合必须依赖Iterator输出 Map<String, Integer> map = new HashMap<String ...

  5. ListOperations

    RedisOperations<K,V> getOperations()  V index(K key, long index)  V leftPop(K key)  V leftPop( ...

  6. C#返回Json,js解析Json,并添加到select标签中

    后台: List<Student> list=GetAll();//id name string json = new JavaScriptSerializer().Serialize(l ...

  7. mysql字符串的隐式转换导致查询异常

    如果mysql某个字段(name)类型为varchar, 加了索引,在执行where查询的时候,传入了int的值,这样就会全表扫描,把每一条的值都转换成int(会出现"中国"-&g ...

  8. codeforces 617E E. XOR and Favorite Number(莫队算法)

    题目链接: E. XOR and Favorite Number time limit per test 4 seconds memory limit per test 256 megabytes i ...

  9. Android: 一个两点触控的案例

    下面是一个两点触控的案例代码: package com.zzj; import android.app.Activity; import android.os.Bundle; import andro ...

  10. python 标准库 —— http(http.cookiejar)

    1. cookie 信息的读取 from urllib import request import http from http import cookiejar cookie = cookiejar ...