1 / 17
文档名称:

python专题——正则表达式..docx

格式:docx   大小:737KB   页数:17页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

python专题——正则表达式..docx

上传人:q1188830 2019/7/9 文件大小:737 KB

下载得到文件列表

python专题——正则表达式..docx

文档介绍

文档介绍:正则表达式正则表达式(RegularExpression)是一种文本模式,包括普通字符和特殊字符。正则表达式使用单个字符串来描述、匹配一系列某个句法规则的字符串。简介为什么使用正则表达式测试字符串内的模式替换文本基于模式匹配从字符串中提取子字符串语法正则表达式(regularexpression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某些子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。普通字符普通字符包括没有显示指定为元字符(特殊字符和符号)的所有可打印和不可打印字符,这包括所有大写和小写字母、所有数字、所有标点符号和一些其他字符。非打印字符特殊字符所谓特殊字符,就是一些含有特殊含义的字符。许多元字符要求在试图匹配它们时特别对待。若要匹配这些特殊字符,必须首先使用字符“转义”,即,将反斜杠“\”放在它们前面。限定符限定符用来指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。“*”匹配前面的子表达式零次或多次,例如/zo*/,匹配“*”前的字符“o”零次或多次,匹配“z”时匹配了“*”前的子表达式“o”是零次。*、+和?限定符都是贪婪的,因为它们会尽可能多的匹配文字,只有在它们的后面加上?就可以实现非贪婪或最小匹配。例如:<H1>Chapter1-介绍正则表达式</H1>贪婪模式:下面的表达式匹配从开始小于符号(<)到关闭H1标记的大于符号(>)之间的所有内容。/<.*>/,贪婪模式匹配结果:<H1>Chapter1-介绍正则表达式</H1>非贪婪:如果您只需要匹配开始和介绍H1标记,下面的非贪婪表达式只匹配<H1>。/<.*?>/,非贪婪只会匹配:<H1>定位符定位符能够将正则表达式固定到行首或行尾。注意:不能讲限定符与定位点一起使用。不允许诸如^*之类的表达式。若要匹配一行文本开始处的文本,在正则表达式的开始使用^字符。若要匹配一行文本的结束处的文本,在正则表达式的结束处使用$字符。例如:/^Chapter[1-9][0-9]{0,1}$/字边界是单词和空格之间的位置。非字边界是任何其他位置。下面的表达式匹配单词Chapter的开头三个字符,因为这三个字符出现在字边界的后面:/\bCha/\b字符的位置是非常重要的。如果它位于匹配字符串的开始,它在单词开始处查找匹配项。如果位于字符串的结尾,他在单词的结尾处查找匹配项。\ter/b\下面的表达式匹配Chapter中的字符串apt,但不匹配aptitude中的字符串apt:/\Bapt/选择用圆括号将所有选择项括起来,相邻的选择项之间用|分隔。但圆括号会有一个副作用,是相关的匹配会被缓存,此时可用?:放在第一个选项前来消除这种副作用。其中?:是非捕获元之一,还有两个非捕获元是?=和?!,这两个还有更多的含义,前者为正向预查,在任何开始匹配圆括号内的正则表达式模式的位置来匹配搜索字符串,后者为负向预查,在任何开始不匹配该正则表达式模式的位置来匹配搜索字符串。反向引用对一个正则表达式模式或部分模式两边添加圆括号将导致相关匹配存储到一个临时缓冲区中,所捕获的每个子匹配都按照在正则表达式模式中从左到右出现的顺序存储。缓冲区编号从1开始,最多可存储99个捕获的子表达式。每个缓冲区都可以使用 \n访问,其中n为一个标识特定缓冲区的一位或两位十进制数。可以使用非捕获元字符 ?:、?= 或 ?! 来重写捕获,忽略对相关匹配的保存。例如:varstr="Isisthecostofofgasolinegoingupup";varpatt1=/\b([a-z]+)\1\b/;((patt1));捕获的表达式,正如[a-z]+指定的,包括一个或多个字母。正则表达式的第二部分是对以前捕获的子匹配项的引用,即,单词的第二个匹配项正好由括号表达式匹配。\1指定第一个子匹配项。字边界元字符确保只检测整个单词。否则,诸如"isissued"或"thisis"之类的词组将不能正确地被此表达式识别。正则表达式后面的全局标记g指定将该表达式应用到输入字符串中能够查找到的尽可能多的匹配。表达式的结尾处的不区分大小写i标记指定不区分大小写。多行标记指定换行符的两边可能出现潜在的匹配。组(?P<name>)?P代表的是Python的语法扩展,<name>代表自定义命名,...代表命名的语法规则。比如:(?P<num>\d+),命名之后可以在后面调用。比如:(r'(?P<num>\d+)\[a-z]+(?P=num)',s)#找出中间夹有字母的数字。元字符运算符优先级匹配规则基本模式匹配模式是正则表达式最基本的元素,它们是一组描述字符串特征的字符。字符簇[a-z]//匹配所有的小写字母[A-Z]//匹配所

最近更新

二零二五年度食品加工企业白糖原料采购合同模.. 13页

二零二五年度餐饮业特色菜品陈列推广合作协议.. 16页

二零二五年度高压电力线路施工工程合同 16页

二零二五年度高科技产品加工保密协议模板 15页

二零二五年度高端商务保洁托管服务合同范本 14页

二零二五年度高速公路监控设备安装施工合同 16页

二零二五年建筑工程材料定点采购及供应合同模.. 15页

二零二五年新型快递包装盒研发与分销合作协议.. 15页

二零二五年智能冲击钻施工技术服务合同 14页

二零二五年橱柜行业技术交流与合作合同 16页

二零二五年物业小区安保服务合同终止通知 16页

二零二五年班组劳务分包工程合作协议范本-@-1.. 14页

二零二五年电商代运营内容创作与优化合同 17页

二零二五年电梯安装工程监理与质量控制合同规.. 14页

二零二五年科技园区研发项目投资合作合同正本.. 17页

二零二五年绿色能源项目场地租赁服务协议 14页

二零二五年茶园文化推广与品牌形象设计合同 15页

二零二五年车辆按揭贷款合同范本 16页

二零二五年金融科技第三方保密协议 13页

二零二五搬家运输企业定制合同模板 16页

二零二五版IC卡校园一卡通建设与运营合同 18页

二零二五版个人电动汽车购买贷款担保合同示范.. 15页

二零二五版企业代账服务与财务决策支持协议 17页

幼儿园托班安全教案-兔子先生去散步 3页

二零二五版商业地下室租赁合同范本 14页

二零二五版地毯产品定制化设计与生产合同 16页

幼儿园中班科学活动教案《-巧取乒乓球》 3页

财务文员2019年终工作总结 2页

二零二五版大型活动场地短期租赁服务协议 14页

二零二五版安置房项目验收与交付合同 14页