正则表达式:re--python核心编程(3),chapter 1

最近听吴老的电台,收获颇多,给人映像最深的就是:学会编程 和 坚持学习;作为一名测试员,要从一名手工测试转化成 测试开发 或者资深的测试工程师,编码水平是必须具备的基本素质;吴老所说,撸1W到2W行代码算入门,其实我自己也不知道我又没有撸到1W行代码,虽然在工作中能用python编写测试脚本来辅助测试,提高自己的工作效率;为了更加巩固的加强自己的编码基础,所以买了一本 python核心编程第三版,来夯实基础。

从今天开始,我会坚持把这本书,学习完毕,并借博客园这个平台来记录学习过程和总结;为了早日成为一位牛叉的测试员,也为了 进一步提高自己的价值,当然也是为了能获得高薪了,哈哈哈!

下面的是本书的第一部分:通用应用主题,第一章:正则表达式

正则表达式总体来说有两种模式:匹配和搜索,match和search

   最常用的方法有:compile、match、search、findall、split、sub

常用的模块属性:re.I 忽略大小写、re.M匹配时,根据字符串的首尾来结束,不是按照换行来确定字符串的结束

          re.S “.” 能匹配所有的字符、

  match:是从字符串的开始进行匹配,失败则返回None,否则返回匹配结果:    

>>> s = ‘test‘
>>> re.match(‘st‘,s)
>>> result = re.match(‘st‘,s)
>>> print result
None
>>> result = re.match(‘tes‘,s)
>>> result
<_sre.SRE_Match object at 0x02D6FA30>
>>> result.group()
‘tes‘

search:直接就是在字符串里面查找,没有找到返回None

>>> s = ‘test‘
>>> result = re.search(‘ww‘,s)
>>> print result
None
>>> result = re.search(‘st‘,s)
>>> print result.group()
st

findall:这个是我以前经常用到这个,反正以前用到正则表达式的时候都用它

    找到时返回一个list,如果没找到也会返回一个空的list

>>> s = ‘Just to learn‘
>>> pattern = re.compile(‘^j\w+‘)
>>> result = re.findall(pattern,s)
>>> print result
[]
>>> pattern = re.compile(‘^j\w+?‘)
>>> result = re.findall(pattern,s)
>>> print result
[]
>>> pattern = re.compile(‘^J\w+‘)
>>> result = re.findall(pattern,s)
>>> print result
[‘Just‘]
>>>

  split 和 sub 这两个方法也是我今天才知道的,以前从来没用过,感觉也比较使用

>>> s = ‘Just to learn,HAHA‘
>>> result = re.split(‘\s|,‘,s)
>>> print result
[‘Just‘, ‘to‘, ‘learn‘, ‘HAHA‘]

这个split比str.split强大太多了

>>> s = ‘I love you forever!‘
>>> result = re.sub(‘\s‘,‘=>‘,s)
>>> print result
I=>love=>you=>forever!
>>>

sub 和 str.replace比较像,只是更加牛逼

正则表达式,我感觉在工作中用到的地方太多了,包括前段时间的ui自动化,和最近接口测试中,都会用到,奇妙无穷

下面这张图是在其他人那里扣出来的,我经常作为字典来用,具体从哪儿来的,我也记不清了,总之不好意思,我也要贴一下,哈哈

时间: 2025-01-08 18:26:40

正则表达式:re--python核心编程(3),chapter 1的相关文章

python核心编程--笔记

python核心编程--笔记 的解释器options: 1.1 –d   提供调试输出 1.2 –O   生成优化的字节码(生成.pyo文件) 1.3 –S   不导入site模块以在启动时查找python路径 1.4 –v   冗余输出(导入语句详细追踪) 1.5 –m mod 将一个模块以脚本形式运行 1.6 –Q opt 除法选项(参阅文档) 1.7 –c cmd 运行以命令行字符串心事提交的python脚本 1.8 file   以给定的文件运行python脚本 2 _在解释器中表示最后

《Python核心编程》 第五章 数字 - 课后习题

课后习题  5-1 整形. 讲讲 Python 普通整型和长整型的区别. 答:普通整型是绝大多数现代系统都能识别的. Python的长整型类型能表达的数值仅仅与你机器支持的(虚拟)内存大小有关. 5-2 运算符 (a) 写一个函数,计算并返回两个数的乘积 (b) 写一段代码调用这个函数,并显示它的结果 答: def pro(a,b): p = a*b return p a = int(raw_input("a=")) b = int(raw_input("b="))

python核心编程第二版

初学Python这是一本有关Python开发的指南涵盖近期发布的Pyttlon版本的核心功能特性,而不仅仅是语法学习更多的高阶内容,如正则表达式.网络.多线程.图形用户界面.Web/CGl和Python扩展等包括几个全新的章节,关于数据库.网络客户端.Java/Jytt30n和Microsoft Office等 展示数以百计的代码片段.交互实例和大量加强您的Python技能的实用练习"对Wesley Chun<Python核心编程>第二版的漫长等待是值得的--它的深邃.它的全面,以及

Python核心编程 第3版 中文版pdf

[下载地址] <Python核心编程(第3版)>是经典畅销图书<Python核心编程(第二版)>的全新升级版本,总共分为3部分.第1部分为讲解了Python的一些通用应用,包括正则表达式.网络编程.Internet客户端编程.多线程编程.GUI编程.数据库编程.Microsoft Office编程.扩展Python等内容.第2部分讲解了与Web开发相关的主题,包括Web客户端和服务器.CGI和WSGI相关的Web编程.Django Web框架.云计算.高级Web服务.第3部分则为一

分享《Python核心编程(第3版)》《Python编程入门(第3版)》高清中英文版PDF+源代码

<Python核心编程(第3版)>经典<Python核心编程(第二版)>的全新升级版本,总共分为3部分.第1部分为讲解了Python的一些通用应用,包括正则表达式.网络编程.Internet客户端编程.多线程编程.GUI编程.数据库编程.Microsoft Office编程.扩展Python等内容.第2部分讲解了与Web开发相关的主题,包括Web客户端和服务器.CGI和WSGI相关的Web编程.Django Web框架.云计算.高级Web服务.第3部分则为一个补充/实验章节,包括文

Python 核心编程 (第二版) 中文高清pdf版【110M】高清下载

Python 核心编程是经典的Python指导书,在第一版的基础上进行了全面升级.全书分为两个部分:第1部分占据了大约三分之二的篇幅,阐释这门语言的“核心”内容,包括基本的概念和语句.语法和风格. Python对象.数字类型.序列类型.映射和集合类型.条件和循环.文件和输入/输出.错误和异常.函数和函数式编程.模块.面向对象编程.执行环境等内容:第2部分则提供了各种高级主题来展示可以使用Python做些什么,包括正则表达式.网络编程.网络客户端编程.多线程编程.图形用户界面编程. Web编程.数

【python核心编程】第六章 序列

1.操作符 (1)成员关系操作符:in .not in >>> string ='abcdefg'>>> 'a' in stringTrue>>> 'h' in stringFalse>>> 'h' not in stringTrue *补充知识*:string模块 >>> import string>>> string.uppercase        #大写字母'ABCDEFGHIJKLMNOP

自学python核心编程

之前看过一段时间的小甲鱼零基础自学python,b站上有高清免费资源[av4050443],但是作为零基础实在学得艰难,下载了python核心编程pdf,在这里做一些笔记. 虽然使用的是第二版的教材,但我使用的是python3.5.2,感觉上差别不大,可以阅读. 这里从第二章的练习题开始! -------------------------------------------------------- 2 - 5:用while 和for 打印0-10: i = 0 while i < 11: p

python核心编程例子3.1

#!/usr/bin/env python # -*- coding:utf-8 -*- 'python核心编程例子3.1:makeTextFile.py -- create text file' import os import sys ls = os.linesep #获取当前平台使用的行终止符.Windows下返回'/r/n',Linux使用'/n'. while True: #按照书的逻辑,此处应该定义个fname,然后循环判断,但是书里没写. fname = raw_input('in