Python_正则表达式样例
'''
正则表达式是字符串处理的有力工具和技术,正则表达式使用预定义的特定模式去匹配一类具有共同特征的字符串,
主要用于字符串处理,可以快速、准确地完成复杂的查找、替换等处理要求。
正则表达式由元字符及其不同组合来构成,通过巧妙地构造正则表达式可以匹配任意字符串,并完成复杂的字符串处理任务。
'''
'''
如果以'\'开头的元字符与转义字符相同,则需要使用'\\',或者使用原始字符串。在字符串前加上字符r或R之后表示原始字符串,字符串中任意字符都不再进行转义。
原始字符可以减少用户的输入,主要用于正则表达式和文件路径字符串的情况,但如果字符串以一个斜线'\'结束,则需要多写一个斜线,即以'\'结束
'''
#sample
'''
(1)最简单的正则表达式是普通字符串,智能匹配自身。
(2)'[pjc]ython' 可以匹配'python'、'jython'、'cython'
(3)'[a-zA-Z0-9]'可以匹配一个任意大小写字母或数字
(4)'[^abc]'可以一匹配任意除'a'、'b'、'c'之外的字符
(5)'python|perl'或'p(ython|erl)'都可以匹配'python'或'perl'
(6)子模式后面加上问号表示可选。r'http://'? (www\.)? python\. org只能匹配http://www.python.org、www.python.org、python.org、http://python.org
(7)'^http'只能匹配所有以'http'开头的字符串
(8)(pattern)*:允许模式重复0次或多次
(9)(pattern)+:允许模式重复1次2或多次
(10)(pattern){m,n}:允许模式重复m~n次
(11)'(a|b)*c':匹配多个(包含0个)a或b,后面紧跟一个字母c
(12)'ab{1,}':等价于'ab+',匹配以字母a开头后面带1个或多个字母b的字符串
(13)'^[a-zA-Z]{1}([a-zA-Z0-9._]){4,19}$',匹配长度5~20的字符串,必须以字母开头,可带数字、'-'、'.'的字符串
(14)'^(\w){6,20}$':匹配长度为6~20的字符串,可以包含字母、数字、下划线
(15'^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$':检查给定字符串是否为合法IP地址
(16)'^(13[4-9]\d{8})|(15[01289]\d{8})$':检查给定的字符串是否为移动手机号码
(17)'^[a-zA-Z]+$':检查给定字符串是否只包含英文字母大小写
(18)'^\w+@(\w+\.)+\w+$':检查给定字符串是否为合法电子邮箱地址
(19)'^(\-)? \d+(\.\d{1,2})?$':检查给定字符串是否为最多带2位小数的正数或负数
(20)'[\u4e00-\u9fa5]':匹配给定字符串中的所有汉字。
(21)'^\d{18}|\d{15}$':检查给定字符串是否为合法身份证格式
(22)'\d{4}-\d{1,2}-\d{1,2}':匹配指定格式的日期,例如2017-6-8
(23)'^(? = .*[a-z])(? =.*[A-Z])(? =.*\d)(? =.*[,._]).{8,}$':检查给定字符串是否为强密码,必须同时包含英文大写字母,英文小写字母、数字或特殊符号(如英文逗号、英文句号、下划线),并且长度至少8位
(24)'(?!.*[\'\"/;=%?]).+':如果给定字符串中包含'\"\/\;\=,%\?则匹配失败
(25)'(.)\\1+':匹配任意字符的一个或多次出现
(26)'(? P<f>\b\w+\b)\s+(? P=f)':匹配连续出现两次的单词
'''
Python_正则表达式样例的更多相关文章
- JMeter入门(01)概念和样例
一.概念 JMeter 是一款专门用于功能测试和压力测试的轻量级测试开发平台,实现了许多和互联网相关的网络测试组件,同时还保留着很强的扩展性. JMeter可以用来测试诸如:静态文件,Java Ser ...
- PAT 1024 科学计数法 (20)(精简版代码+思路+推荐测试样例)
1024 科学计数法 (20)(20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+, ...
- Ext JS学习第十六天 事件机制event(一) DotNet进阶系列(持续更新) 第一节:.Net版基于WebSocket的聊天室样例 第十五节:深入理解async和await的作用及各种适用场景和用法 第十五节:深入理解async和await的作用及各种适用场景和用法 前端自动化准备和详细配置(NVM、NPM/CNPM、NodeJs、NRM、WebPack、Gulp/Grunt、G
code&monkey Ext JS学习第十六天 事件机制event(一) 此文用来记录学习笔记: 休息了好几天,从今天开始继续保持更新,鞭策自己学习 今天我们来说一说什么是事件,对于事件 ...
- Scala学习十四——模式匹配和样例类
一.本章要点 match表达式是更好的switch,不会有意外调入下一个分支 如果没有模式能够匹配,会抛出MatchError,可以用case _模式避免 模式可以包含一个随意定义的条件,称做守卫 你 ...
- C++的性能C#的产能?! - .Net Native 系列《三》:.NET Native部署测试方案及样例
之前一文<c++的性能, c#的产能?!鱼和熊掌可以兼得,.NET NATIVE初窥> 获得很多朋友支持和鼓励,也更让我坚定做这项技术的推广者,希望能让更多的朋友了解这项技术,于是先从官方 ...
- MarkDown+LaTex 数学内容编辑样例收集
$\color{green}{MarkDown+LaTex 数学内容编辑样例收集}$ 1.大小标题的居中,大小,颜色 [例1] $\color{Blue}{一元二次方程根的分布}$ $\color{R ...
- 33个超级有用必须要收藏的PHP代码样例
作为一个正常的程序员,会好几种语言是十分正常的,相信大部分程序员也都会编写几句PHP程序,如果是WEB程序员,PHP一定是必备的,即使你没用开发过大型软件项目,也一定多少了解它的语法. 在PHP的流行 ...
- 关于peersim样例配置文件的超详细解读(新手勿喷)
相信很多兄弟一开始接触peersim,对配置文件还是有点不适应,我看了好久的样例的配置文件,一层层去找对应的文件的方法,终于好像悟懂了一点,记下来以后回顾. 贴上代码,一点点分析. 首先要说下所谓的配 ...
- hdu 1003 MAX SUM 简单的dp,测试样例之间输出空行
测试样例之间输出空行,if(t>0) cout<<endl; 这样出最后一组测试样例之外,其它么每组测试样例之后都会输出一个空行. dp[i]表示以a[i]结尾的最大值,则:dp[i ...
随机推荐
- 关于对数组和指针的测试与分析OC
前言: 这个笔试题想必很多小伙伴都很面熟把,差不多10个人有7个人不会做这道笔试题,或许有知道答案的,但是仅仅知道答案,心里还是一头雾水.如果你真的不会那就请认真看完本文学习一下吧! 错误想法: 有的 ...
- cygwin 下安装python MySQLdb
cygwin 下安装python MySQLdb 1) cygwin 更新 运行 cygwin/setup-x86_64.exe a 输入mysql,选择下面的包安装: libmysqlclient- ...
- 框架页面高度自动刷新Javascript脚本
实现原理:加载index.htm时候,每隔1秒钟自动调用脚本刷新框架页面代码 代码优点:只需要设置index.html框架页面中的脚本,调用加载的子页面中不需要设置任何代码. index.htm代码如 ...
- Demonstration of DB Query Analyzer 6.03 Installation and Running on Microsoft Windows 8
Demonstration of DB Query Analyzer 6.03 Installation and Running on Microsoft Windows 8 Ma Genfeng ( ...
- Struts2(XWork)中的Container 一
本文是<<struts2 技术内幕>>的学习笔记 在进行面向对象编程的时候,我们不可避免地要使用继承实现等等java提供的语法支持.但是复杂的对象关系也为对象生命周期的管理带来 ...
- S3c2440A WINCE平台HIVE注册表+binfs的实现
今天最大的收获莫过于把binfs和hive注册表同时在三星的平台上实现了,这可是前无古人啊(只是看到好多哥们说找不到三星的HIVE资料),哈哈哈.怕今天的成果日后成炮灰,还是写下来比较好,要养成这样的 ...
- Linux进程管理 - ps,top,pstree,signal,kill,killall举例演示
ps:将某个时间点的进程运行情况撷取下来 [root@www ~]# ps aux <==观察系统所有的进程数据 [root@www ~]# ps -lA <==也是能够观察所有系统的数据 ...
- TCP的基本概念三次握手,四次挥手
TCP的特性 TCP提供一种面向连接的.可靠的字节流服务 在一个TCP连接中,仅有两方进行彼此通信.广播和多播不能用于TCP TCP使用校验和,确认和重传机制来保证可靠传输 TCP使用累积确认 TCP ...
- 面试之路(3)-详解MVC,MVP,MVVM
一:mvc mvc结构: 视图(View):用户界面. 控制器(Controller):业务逻辑 模型(Model):数据保存 mvc各部分的通信方式 mvc互动模式 通过 View 接受指令,传递给 ...
- iOS解决UITableView中Cell重用带来的问题
tableView的常规配置,当超出一屏的cell就会标上可重用的标识出列到可重用缓存池中,后面再根据可重用标识来到的可重的cell就会和前面显示同样内容. - (UITableViewCell *) ...