python 正则表达式的处理
1.基本用法
#!/usr/bin/env python
# coding=utf-8 import re # example 1
text ="fjsk test\t fjskd bar\t \ttest"
regex = re.compile('\s+')
print regex.split(text) # example 2
email ="""
jfksdfasm@qq.com
test@test.com.cn
jfdskf@163.com
jkmiao@yahoo.123com
""" pattern = r'[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z.0-9]{2,6}'
regex = re.compile(pattern,flags=re.IGNORECASE) # get all
print regex.findall(email) # get the first one
m = regex.search(text)
# print email[m.start():m.end()]
print m # replace
print regex.sub('RECORD',email) 显示:
jkmiao@sysucis:~/workplace/python/test$ python regex.py
['fjsk', 'test', 'fjskd', 'bar', 'test']
['jfksdfasm@qq.com', 'test@test.com.cn', 'jfdskf@163.com', 'jkmiao@yahoo.123com']
None RECORD
RECORD
RECORD
RECORD
2. 分组,返回元组
#example 3
pattern = r'([A-Z0-9._%+=]+)@([A-Z0-9.-]+)\.([A-Z.]{2,5})'
regex = re.compile(pattern,flags=re.IGNORECASE)
m = regex.match('name@domain.suffix')
print m.groups()
print regex.findall(email)
# output
('name', 'domain', 'suffi')
[('jfksdfasm', 'qq', 'com'), ('test', 'gamil', 'com'), ('jfdskf', '', 'com'), ('jkmiao', 'yahoo.com', 'cn')]
3.给分组加名称,返回字典
#example 4 regex = re.compile(r"""
(?P<userame>[A-Z0-9._%+-]+)
@(?P<domain>[A-Z0-9.-]+)
\.
(?P<suffix>[A-Z0-9.]{2,4})
""",flags=re.IGNORECASE|re.VERBOSE) m = regex.match("jkmaio@sysu.com")
print m.groupdict() print regex.findall(email) # output
jkmiao@sysucis:~/workplace/python/test$ python regex.py
{'domain': 'sysu', 'userame': 'jkmaio', 'suffix': 'com'}
[('jfksdfasm', 'qq', 'com'), ('test', 'gamil', 'com'), ('jfdskf', '', 'com'), ('jkmiao', 'yahoo.com', 'cn')]
python 正则表达式的处理的更多相关文章
- Python 正则表达式入门(中级篇)
Python 正则表达式入门(中级篇) 初级篇链接:http://www.cnblogs.com/chuxiuhong/p/5885073.html 上一篇我们说在这一篇里,我们会介绍子表达式,向前向 ...
- Python正则表达式中的re.S
title: Python正则表达式中的re.S date: 2014-12-21 09:55:54 categories: [Python] tags: [正则表达式,python] --- 在Py ...
- Python 正则表达式入门(初级篇)
Python 正则表达式入门(初级篇) 本文主要为没有使用正则表达式经验的新手入门所写. 转载请写明出处 引子 首先说 正则表达式是什么? 正则表达式,又称正规表示式.正规表示法.正规表达式.规则表达 ...
- python正则表达式re
Python正则表达式: re 正则表达式的元字符有. ^ $ * ? { [ ] | ( ).表示任意字符[]用来匹配一个指定的字符类别,所谓的字符类别就是你想匹配的一个字符集,对于字符集中的字符可 ...
- Python正则表达式详解
我用双手成就你的梦想 python正则表达式 ^ 匹配开始 $ 匹配行尾 . 匹配出换行符以外的任何单个字符,使用-m选项允许其匹配换行符也是如此 [...] 匹配括号内任何当个字符(也有或的意思) ...
- 比较详细Python正则表达式操作指南(re使用)
比较详细Python正则表达式操作指南(re使用) Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式.Python 1.5之前版本则是通过 regex 模块提供 E ...
- Python正则表达式学习摘要及资料
摘要 在正则表达式中,如果直接给出字符,就是精确匹配. {m,n}? 对于前一个字符重复 m 到 n 次,并且取尽可能少的情况 在字符串'aaaaaa'中,a{2,4} 会匹配 4 个 a,但 a{2 ...
- python正则表达式 小例几则
会用到的语法 正则字符 释义 举例 + 前面元素至少出现一次 ab+:ab.abbbb 等 * 前面元素出现0次或多次 ab*:a.ab.abb 等 ? 匹配前面的一次或0次 Ab?: A.Ab 等 ...
- Python 正则表达式-OK
Python正则表达式入门 一. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分. 正则表达式是用于处理字符串的强大工具, 拥有自己独特的语法以及一个独立的处理引擎, 效率上 ...
- Python天天美味(15) - Python正则表达式操作指南(re使用)(转)
http://www.cnblogs.com/coderzh/archive/2008/05/06/1185755.html 简介 Python 自1.5版本起增加了re 模块,它提供 Perl 风格 ...
随机推荐
- Windows8连接网络后自动弹出Bing解决方法
Windows8 网络连接速度很快( ADSL ),但是连接之后总是会打开 Bing,这是很烦人的一件事,因为你连接网络可能并不想打开浏览器,甚至,你讨厌 Bing. 我也一直被这个问题困扰了很久,用 ...
- kmp算法中的nextval实例解释
求nextval数组值有两种方法,一种是不依赖next数组值直接用观察法求得,一种方法是根据next数组值进行推理,两种方法均可使用,视更喜欢哪种方法而定. 本文主要分析nextval数组值的第二种方 ...
- Elasticsearch利用scroll查询获取所有数据
Elasticsearch有两种分页方式,一种是通过from和size条件来实现,但是该方法开销比较大,另一种是利用scroll来实现,通过scroll来实现分页获取所有的数据,下面是利用python ...
- 深入理解Linux网络技术内幕——用户空间与内核空间交互
概述: 内核空间与用户空间经常需要进行交互.举个例子:当用户空间使用一些配置命令如ifconfig或route时,内核处理程序就要响应这些处理请求. 用户空间与内核有多种交互方式,最常 ...
- 题目1003:A+B
题目1003:A+B 时间限制:1 秒内存限制:32 兆 题目描述: 给定两个整数A和B,其表示形式是:从个位开始,每三位数用逗号","隔开. 现在请计算A+B的结果,并以正常形式 ...
- docker使用web界面管理Registry
1:安装 docker-registry-web项目 [root@Docker ~]#docker pull atcol/docker-registry-ui 2:docker run镜像 ...
- DS18B20配置
复位脉冲: 先拉低至少480us,以产生复位脉冲,接着释放4.7k电阻为高,延时15~60us, 进入接收. void DS18B20_Rst(void) { DS18B20_IO_OUT(); // ...
- Codeforces 1096G. Lucky Tickets【生成函数】
LINK 题目大意 很简单自己看 思路 考虑生成函数(为啥tags里面有一个dp啊) 显然,每一个指数上是否有系数是由数集中是否有这个数决定的 有的话就是1没有就是0 然后求出这个生成函数的\(\fr ...
- (2)bytes类型
bytes类型就是字节类型 把8个二进制一组称为一个byte,用16进制来表示 Python2里面字符串其实更应该称为字节串,但是python2里面有一个类型是butes,所以在Python2里面by ...
- 使用animate()完成修改图片src切换图片的动画效果
如下所示,在动画效果中的回调函数中进行src的修改和动画的切换 $(".TopImg").animate( {opacity:'toggle'}, "slow" ...