【python之路25】正则表达式

一、正则表达式简介

就其本质而言,正则表达式(或RE)是一种小型的、高度专业化的(在python中),它内嵌在python中,并通过RE模块实现。正则表达式编译成一系列字节码,然后由用C编写的匹配引擎执行。

二、字符匹配(普通字符、元字符)

普通字符:大多数字符和字母都会和自身匹配

#!usr/bin/env python
# -*- coding:utf-8 -*-
import re
li = re.findall(‘alex‘,‘faljfaljflajalexaa‘)
print(li) #打印输出[‘alex‘]

元字符的作用:

.    ----代表除了换行符以外的其他任何字符

^   ----代表以后面的字符开始

$   ----代表以前面的字符结束

[]  -----字符集,[a-z]代表小写字母从a到z的任何一个字母,[0-9]代表0-9的任何一个数字,[.]代表字符.,[a9]代表a或9,[^a-z]代表除了a-z的其他任何字符

代表数量的元字符:

*   -----代表任意个字符,0-多个字符

+  -----代表1-多个字符

?   ------代表0-1个字符

{} ------代表重复固定次数,如:{3}重复3次,{3,}大于等于3次,{3,5}重复3-5次,{,3}重复0-3次

时间: 2024-10-15 14:10:12

【python之路25】正则表达式的相关文章

Python之路-(js正则表达式、前端页面的模板套用、Django基础)

js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../  用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m 表示多行匹配 登录注册验证: test: 判断字符串是否符合规定的规则 rep = /\d+/;   (定义规则) rep.test('')   (引号里面必须包含字母和数字才返回true,否则为false) rep = /^\d+$/; (只有是纯数字时候才返回true,否则是false) exe

【python之路25】模块

一.time模块 1.time.sleep(5)   #等待5秒钟 #!usr/bin/env python # -*- coding:utf-8 -*- import time print('start to sleep.....') time.sleep(5) #等待5秒 print('wake up.....') #!usr/bin/env python # -*- coding:utf-8 -*- import time print(time.clock()) #返回处理器时间,3.3已

python之路之正则表达式

匹配格式^ 匹配字符串的开头$ 匹配字符串的结尾. 除了换行符外的所有字符[...] 用来表示一组字符,,单独列出:[amk]匹配'a','m'或'k'[^..] 不在[]中的字符:[^abc]匹配除了a,b,c之外的字符* 匹配0个或多个+ 匹配1个或多个? 匹配0个或1个由前面的正则表达式定义的片段,非贪婪方式{n,} 精确匹配n个前面的表达式{n,m} 匹配n到m次由前面的正则表达式定义的片段,贪婪方式a|b 匹配a或b() 匹配括号内的表达式,也表示一个组\w 匹配字母数字\W 匹配非字

python之路---24 正则表达式 re模块

一.正则表达式 1.字符组 ① [abc] 匹配a或b或c ②  [a-z] 匹配a到z之间的所有字? [0-9]匹配所有阿拉伯数字 2.元字符 3.量词 4.重要搭配 ①  .*? ②  .*?x        找到下?个x为     ③  (?: 正则表达式)    非优先 5.分组 在正则中使?()进?分组. ?P<name>      对分组进行起名字 6.转义 r"正则表达式" 二.   re模块 1. findall 查找所有. 返回list .findall(

python之路---25 模块和包

一.模块 1.导入方式 自己创建的模块名称 切不可和 内置模块的一样 ①  import  模块 ②  import 模块 as  名      设置在此空间的名称 ③  from 模块 import  功能 ④  from  模块  import  *          引入所有的功能 __all__=[a,b,c]       调用时只调用[  ]中的功能 ⑤ 一次引入多个模块的顺序 2.导入模块的过程 3.if __name__ == '__main__': 测试模块时使用的语句块 调用此

Python之路【第十七篇】:Django【进阶篇 】

Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去调用数据访问层执行数据库操作 import MySQLdb def GetList(sql): db = MySQLdb.connect(user='root', db='wupeiqidb', passwd='1234', host='localhost')

Python之路【第十九篇】:爬虫

Python之路[第十九篇]:爬虫 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引.模拟程序或者蠕虫. Requests Python标准库中提供了:urllib.urllib2.httplib等模块以供Http请求,但是,它的 API 太渣了.它是为另一个时代.另一个互联网所创建的.它需要巨量的工作,甚至包括各种方法覆盖,来完成最简单的任务. import

Python之路【第十八篇】:Web框架们

Python之路[第十八篇]:Web框架们 Python的WEB框架 Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Python的标准库外,其不依赖任何其他模块. 1 2 3 4 pip install bottle easy_install bottle apt-get install python-bottle wget http://bottlepy.org/bottle.py Bottle框架大致可以分为以下部分: 路

python之路--模块--景丽洋

python之路--常用模块 阅读目录 认识模块 什么是模块 模块的导入和使用 常用模块一 collections模块 时间模块 random模块 os模块 sys模块 序列化模块 re模块 常用模块二 hashlib模块 configparse模块 logging模块 认识模块 返回顶部 什么是模块 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码(