python正则

python学习笔记(十)——正则表达式和re模块

两盒软妹~` 提交于 2019-12-03 13:59:51
#正则表达式和re模块 # match(pattern, string,[flag]) #在字符串开始时进行匹配 # pattern 正则表达式 # string 要匹配的字符串 # [flag] 可选标志位,用于控制匹配方式,不区分大小写等 # 匹配字符串是否以mr_开头,不区分大小写 import re pattern = r'mr_\w+' string = 'MR_Shop mr_shop' match = re.match(pattern,string,re.I) #re.I表示不区分大小写 print(match) #匹配成功返回match对象 print('匹配起始位置:',match.start()) print('匹配结束位置:',match.end()) print('匹配位置元组:',match.span()) print('要匹配的字符串:',match.string) print('匹配到的数据:',match.group()) string = '项目名称MR_SHOP mr_shop' match = re.match(pattern,string,re.I) print(match) #匹配失败返回None # 验证输入号码是否是中国移动的号码 import re pattern = r'(13[4-9]\d{8})|(147)|(15[012789

python 正则

匿名 (未验证) 提交于 2019-12-02 22:51:30
r ' ' 1 #!/usr/bin/python 2 # -*- coding: UTF-8 -*- 3 import re 4 str1 = 'aababaaba' 5 print re.findall(r'a.b', str1) View Code #!/usr/bin/python # -*- coding: UTF-8 -*- import re str1 = 'aababaaba' print re.findall(r'a*b', str1) View Code #!/usr/bin/python # -*- coding: UTF-8 -*- import re str1 = 'aababaaba' print re.findall(r'a.*b', str1) View Code .* 组合在一块儿,就变成了另一个意思。在例子中,就是从第一个字母开始扫,遇到 a 就开始截取,然后找所有的 b ,最后找到以 b 结尾尽可能长的一段字符串 #!/usr/bin/python # -*- coding: UTF-8 -*- import re str1 = 'aababaaba' print re.findall(r'a.*?b', str1) View Code #!/usr/bin/python # -*- coding: UTF-8 -*- import re

正则表达工

落花浮王杯 提交于 2019-12-02 22:11:53
Web服务器 3.1 3.1.1 正则表达式 # coding = utf-8 # 导入re模块 import re # 使用match方法操作 result = re.match(正则表达式,要匹配的字符串) # 如果匹配到数据的话,可以用group()来提取 if result: result.group() else: break 3.1.2 re模块示例(匹配以itcast开头的语句) import re result = re.match(r"itcast","itcasterer") result.group() 运行的结果是: itcast 3.1.3 匹配单个字符 序号 符号 定义 1. . 匹配任意一个字符,除了\n 2. [] 匹配[]中列举的字符 3. \d 匹配任意数字0-9 4. \D 匹配非数字 5. \s 匹配空格键或TAB键 6. \S 匹配非空格 7. \w 匹配单字符a-z A-Z 0-9 和_ 8. \W 匹配非单字符 3.1.4 匹配多个字符 序号 符号 定义 1 * 匹配前一个字符出现0次或无限次,即可有可无;如:s* 2 + 匹配前一个字符出现1次或无限次,即至少有1次 3 ? 匹配前一个字符出现1次或者0次,即要么有一次,要么没有 4 {m} 匹配前一个字符出现m次;例:[a-z]{4,36}表示字符串为小写4-26位 5 {m,n}

正则表达式

匿名 (未验证) 提交于 2019-12-02 22:11:45
正则表达式 1.是一种独立的规则,独立的语言 2.正则表达式是什么,能做什么   1.从大段的文字中找到符合规则的内容(爬虫,日志分析...)        如果要把一个文件中所有的手机号码都找出来       open  打开文件         读文件  str形式       从一长串的字符串中找到所有的11位数字       一个字符一个字符的读    2.判断某个字符串是否完全符合规则(表单验证:手机号,QQ号,邮箱,银行卡,身份证号,密码...)      验证这个手机号是否合法       给这个手机号发送一个验证码         用户收到验证码,填写验证码       完成注册 3.正则表达式的规则:    只和字符串相关    从 字符串 中找到符合规则的内容    1.字符组:[字符组] 在同一个位置可能出现的各种字符组成了一个字符组,在正则表达式中用[]表示 字符分为很多类,比如数字,字母,标点等 正则 待匹配字符 匹配结果 说明 [0123456789] 8 True 在一个字符组里枚举合法的所有字符,字符组里的任意一个字符和待匹配字符相同,都视为可以匹配 [0123456789] a False 由于字符组中没有"a"字符,所以不能匹配 [0-9] 7 True 也可以用-表示范围,[0-9]就和[0123456789]是一个意思 [a-z] s

《python 核心编程》第15章正则表达式 答案

对着背影说爱祢 提交于 2019-12-01 19:19:49
看了两天正则表达式,总算是看完了也算入门了吧,顺便把python 15章的习题也给一并清了。 以下是个人的答案,若有不当之处请指教 #coding=utf-8 #!/bin/env python import re #1. 识别下列字符串:“bat,” “bit,” “but,” “hat,” “hit,” 或 “hut” def test1(): bt='bat|bit|but|hat|hit|hut' inputstr=raw_input('input needs to match String') m=re.match(bt,inputstr) if m is not None:print(m.group()) else:print 'not match' # test1() #2.匹配用一个空格分隔的任意一对单词,比如,名和姓 def test2(): bt='(.*)\s(.*)' inputstr=raw_input('输入您的姓名,姓与名之间用空格隔开\n') m=re.match(bt,inputstr) if m is not None: print('您的姓是:%s'%m.group(1)) print('您的名是:%s'%m.group(2)) print('all is:%s'%m.group(0)) else:print 'not match' #

正则

自古美人都是妖i 提交于 2019-12-01 09:54:44
一个模块的测试需求大体可以分为四大块: UI需求 、 功能需求 、 用户场景需求 、 性能与稳定性需求 UI需求 指的是,页面操作需求,不涉及到具体的业务, 仅仅是页面操作的功能 。这里面其实就包含有一些通用的隐性UI需求。 最好的产品是不管是多么小白的用户,拿到产品后能不使用用户手册或不需要旁人的指导下就能上手使用。UI要能指导用户如何去使用或用户能根据返回的提示完成他想要完成的操作。 页面是用户使用感受最直观的体现,一个功能的UI做得好不好,用起来提示容不容易理解,是体现一个产品好不好用的一个关键。基本上每个产品线每个功能模块多多少少都会涉及到UI的改动,交互的设计。 UI需求大体可以从UI限制和UI显示这两大块来考虑 : UI限制指的是页面上都有哪些限制,如输入框的限制,容量的限制,格式的限制; UI显示指的是特定条件下UI的展示效果。 功能需求 指的是,我们 做一个什么功能,要实现什么样的效果 。一般每个功能模块都会有需求文档(或需求矩阵)。若比较规范的产品线会对每个功能模块有一个比较详细的需求规格说明书,需求规格说明书里会明确规定这个功能模块需要实现什么功能,解决什么场景下的什么问题。 举个升级的例子:如升级需求:支持在线升级,支持离线导入升级。 在线升级可以根据升级的流程进行细分:下载升级包、升级过程这两个大过程, 下载升级包又可以细分:从哪里下载,怎么下载(下载的方式

Python基础 9.正则

一个人想着一个人 提交于 2019-12-01 09:15:25
9.1 正则 1、判断一个字符串是否匹配给定的格式​从一个字符串中按指定格式提取信息 9.2 re 1、findall方法: 在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的,则返回空列表 import re #导入re模块,​ a ='python123python666pyt hon888'​ re. findall('python',a) # 把所符台规则的匹配出来,返回一个列表[ 'python', ' python',' python' ]​ re. findall('123' ,a) [ '123' ]​ re.findall('999' ,a) #如果匹配的不存在,则返回一一个空列表[] 2、match方法: re.match 尝试从字符串的起始位置匹配一个模式,匹配成功 返回的是一个匹配对象(这个对象包含了我们匹配的信息),如果不是起始位置匹配成功的话,match()返回的是空,​注意:match只能匹配到一个 import re .​a ='python123python666python888 "re .match(' python',a)​<_ sre.SRE_Match object; span=(e, 6), match='python" >​re .match( '123' ,a)​»>> re .match( "

Python之re模块

瘦欲@ 提交于 2019-12-01 02:59:02
一、正则表达式     re模块是python独有的匹配字符串的模块,该模块中提供的很多功能是基于正则表达式实现的,而正则表达式是对字符串进行模糊匹配,提取自己需要的字符串部分,他对所有的语言都通用。注意: re模块是python独有的 正则表达式所有编程语言都可以使用 re模块、正则表达式是对字符串进行操作 因为,re模块中的方法大都借助于正则表达式,故先学习正则表达式。 (一)常用正则 1、字符组 在同一个位置可能出现的各种字符组成了一个字符组,在正则表达式中用[]表示 正则 待匹配字符 匹配结果 说明 [0123456789] 8 True 在一个字符组里枚举合法的所有字符,字符组里的任意一个字符和"待匹配字符"相同都视为可以匹配 [0123456789] a False 由于字符组中没有"a"字符,所以不能匹配 [0-9] 7 True 也可以用-表示范围,[0-9]就和[0123456789]是一个意思 [a-z] s True 同样的如果要匹配所有的小写字母,直接用[a-z]就可以表示 [A-Z] B True [A-Z]就表示所有的大写字母 [0-9a-fA-F] e True 可以匹配数字,大小写形式的a~f,用来验证十六进制字符 2、字符 元字符 匹配内容 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线 \s 匹配任意的空白符 \d 匹配数字 \n

python正则findall

浪尽此生 提交于 2019-11-30 00:44:38
import reimport codecsoperation_list = []operation_list_sort = []with codecs.open(r'C:\Users\Administrator.SC-201812211013\PycharmProjects\untitled29\yiwoqu\code\xianbingshi_write.txt','r','utf8') as f: for line in f: line = re.findall('行.*?术',line) operation_list.append(line)for line in operation_list: if line not in operation_list_sort: operation_list_sort.append(line)for line in operation_list_sort: for line in line: print(line) 来源: https://www.cnblogs.com/yiwoqu/p/11542069.html

re正则匹配

|▌冷眼眸甩不掉的悲伤 提交于 2019-11-29 04:41:09
import re #导入re a=re.findall("picture","picture what i find") #re模块 re.findall("匹配规则","匹配规则所在字符串") print(a) 1、^元字符:字符串开始位置与匹配规则符合就匹配,否则不匹配 import re #导入re a=re.findall("^picture","picture what i find") #re模块 re.findall("匹配规则","匹配规则所在字符串") print(a) ['picture'] ^元字符写到[]字符集里就是反取 import re #导入re a=re.findall("[^picture]","picture what i find") #re模块 re.findall("匹配规则","匹配规则所在字符串") print(a)[' ', 'w', 'h', 'a', ' ', ' ', 'f', 'n', 'd'] 2、$字符:字符串结束位置与匹配规则相匹配则匹配, $在匹配规则结尾 import re #导入re a=re.findall("picture$","this is the picture") #re模块 re.findall("匹配规则","匹配规则所在字符串") print(a) 3、*元字符: 需要字符串里完全符合,匹配规则