Python3正则表达式(2)
re库常用方法

正则表达式的表示类型:
re.search(pattern, string, flags=0)
- pattern : 正则表达式的字符串或原生字符串表示
- string : 待匹配字符串
- flags : 正则表达式使用时的控制标记
re.match(pattern, string, flags=0)
- pattern : 正则表达式的字符串或原生字符串表示
- string : 待匹配字符串
- flags : 正则表达式使用时的控制标记
re.findall(pattern, string, flags=0)
- pattern : 正则表达式的字符串或原生字符串表示
- string : 待匹配字符串
- flags : 正则表达式使用时的控制标记
re.split(pattern, string, maxsplit=0, flags=0)
- pattern : 正则表达式的字符串或原生字符串表示
- string : 待匹配字符串
- maxsplit: 最大分割数,剩余部分作为最后一个元素输出
- flags : 正则表达式使用时的控制标记
re.finditer(pattern, string, flags=0)
- pattern : 正则表达式的字符串或原生字符串表示
- string : 待匹配字符串
- flags : 正则表达式使用时的控制标记
re.sub(pattern, repl, string, count=0, flags=0)
- pattern : 正则表达式的字符串或原生字符串表示
- repl : 替换匹配字符串的字符串
- string : 待匹配字符串
- count : 匹配的最大替换次数
- flags : 正则表达式使用时的控制标记
regex = re.compile(pattern, flags=0)
- pattern : 正则表达式的字符串或原生字符串表示
- flags : 正则表达式使用时的控制标记
练习代码
import re
text = 'alpha. beta ... gamma delta'
re.split('[\. ]+', text)
re.split('[\. ]+', text, maxsplit = 2)
re.split('[\. ]+', text, maxsplit = 1)
pat = '[a-zA-Z]+'
re.findall(pat, text)
#---------------------------------------
pat = '{name}'
text = 'Dear {name}...'
re.sub(pat, 'Mr.Dong', text)
#----------------------------------------
s = "It's a very good good idea."
re.sub(r'(\b\w+) \1', r'\1', s)
re.sub(r'((\w+) )\1', r'\2 ', s)
#-----------------------------------------------
re.sub('a', lambda x:x.group(0).upper(), 'aaa, abc, bab')
#-----------------------------------------------
re.sub('[a-z]', lambda x: x.group(0).upper(), 'aaa abc abdfe')
#-----------------------------------------------
re.sub('[a-zA-Z]', lambda x: chr(ord(x.group(0))^32), 'aaa abc abde')
#-----------------------------------------------
re.subn('a', 'dfg', 'aaa abc abde')
#-----------------------------------------------
re.sub('a', 'dfg', 'aaa abc abde')
#-----------------------------------------------
re.escape('http://www.python.org')
#-----------------------------------------------
example = 'Beautiful is better than ugly.'
re.findall('\\bb.+?\\b', example)
re.findall('\\bb.+\\b', example)
re.findall('\\bb\w*\\b', example)
re.findall('\\Bh.+?\\b', example)
re.findall('\\b\w.+?\\b', example)
re.findall('\w+', example)
#-----------------------------------------------
re.findall('\d+\.\d+\.\d+', 'Python 2.7.11, python 3.6.5')
#-----------------------------------------------
example = 'ShanDong Institute of Business and Technology is a very beautiful school.'
re.findall('\\ba.+?\\b', example)
re.findall('\\ba\w*\\b', example)
re.findall('\\Bo.+?\\b', example)
re.findall('\\b\w.+?\\b', example)
re.findall(r'\b\w.+?\b', example)
re.split('\s', example)
- 《Python可以这样学》
- http://www.cnblogs.com/python-xkj/p/9231624.html
后记:打油诗一首
适度锻炼,量化指标
考量天气,设定目标
科学锻炼,成就体标
高效科研,实现学标
Python3正则表达式(2)的更多相关文章
- 详解 Python3 正则表达式(五)
上一篇:详解 Python3 正则表达式(四) 本文翻译自:https://docs.python.org/3.4/howto/regex.html 博主对此做了一些注明和修改 ^_^ 非捕获组和命名 ...
- 详解 Python3 正则表达式(四)
上一篇:详解 Python3 正则表达式(三) 本文翻译自:https://docs.python.org/3.4/howto/regex.html 博主对此做了一些注明和修改 ^_^ 更多强大的功能 ...
- 详解 Python3 正则表达式(三)
上一篇:详解 Python3 正则表达式(二) 本文翻译自:https://docs.python.org/3.4/howto/regex.html 博主对此做了一些批注和修改 ^_^ 模块级别的函数 ...
- 详解 Python3 正则表达式(二)
上一篇:详解 Python3 正则表达式(一) 本文翻译自:https://docs.python.org/3.4/howto/regex.html 博主对此做了一些批注和修改 ^_^ 使用正则表达式 ...
- 详解 Python3 正则表达式(一)
本文翻译自:https://docs.python.org/3.4/howto/regex.html 博主对此做了一些批注和修改 ^_^ 正则表达式介绍 正则表达式(Regular expressio ...
- python025 Python3 正则表达式
Python3 正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. ...
- python3 正则表达式学习笔记
re.match函数 re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none. ~匹配成功re.match方法返回一个匹配的对象,否则返回No ...
- Python3正则表达式
正则表达式是一个特殊的字符序列,他能帮助你方便的检查一个字符串是否与某种模式匹配. re.match函数 re.match尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,matc ...
- python3正则表达式总结
转自csdn,去这里看更多吧: https://blog.csdn.net/weixin_40136018/article/details/81183504 还有一个废话很多的详细系列,在这里:htt ...
- 【转】Python3 正则表达式特殊符号及用法(详细列表)
转载自鱼c论坛:https://fishc.com.cn/forum.php?mod=viewthread&tid=57691&extra=page%3D1%26filter%3Dty ...
随机推荐
- adboost方法(转载)
转载链接:http://blog.csdn.net/google19890102/article/details/46376603 一.集成方法(Ensemble Method) 集成方法主要 ...
- redhat换用centos源
解除原有源rpm -aq|grep yum|xargs rpm -e --nodepsrpm -aq|grep python-iniparse|xargs rpm -e --nodeps rpm -q ...
- 开源监控系统整合Nagios+Cacti+Nconf详解
1.配置好yum源,为了提高效率建议搭建本地yum源 yum install -y http* yum install -y mysql* yum install -y php-* yum in ...
- 关于java中生产者消费者模式的理解
在说生产者消费者模式之前,我觉得有必要理解一下 Obj.wait(),与Obj.notify()方法.wait()方法是指在持有对象锁的线程调用此方法时,会释放对象锁,同时休眠本线程.notify() ...
- java多线程快速入门(四)
通过匿名内部类的方法创建多线程 package com.cppdy; //通过匿名内部类的方法创建多线程 public class ThreadDemo2 { public static void m ...
- ubuntu 查看进程信息
查看进程信息 ps ps -aux 查看所有进程,每行一个程序 top 显示当前运行程序 kill 98 (98为PID号,) kill -9 98 (强制杀死98) ps -e Linux如何查看端 ...
- django----文件配置
静态路径配置 STATIC_URL = '/static/' #这个配置就相当于下面配置的别名,如果这里的名字修改了就按照这里的名字去导入 STATICFILES_DIRS = [ os.path.j ...
- python----线程进程协程
python线程: import threading import time def show(arg): time.sleep() print('thread' + str(arg)) ): t = ...
- 区间dp好题cf149d 括号匹配
见题解链接https://blog.csdn.net/sdjzping/article/details/19160013 #include<bits/stdc++.h> using nam ...
- python 全栈开发,Day127(app端内容播放,web端的玩具,app通过websocket远程遥控玩具播放内容,玩具管理页面)
昨日内容回顾 1. 小爬爬 内容采集 XMLY 的 儿童频道 requests 2. 登陆 注册 自动登陆 退出 mui.post("请求地址",{数据},function(){} ...