正则表达式使用工具教程.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
正则表达式使用工具教程

正则表达式使用工具教程正则表达式-教程正则表达式是烦琐的,但是它是强大的,在八爪鱼中,学会正则表达式的应用能让你的数据展示更加规范化,所提取数据字段表达更加精准。合理的运用正则,除了提升你的数据展示规范、字段表达精准之外,还会给你带来绝对的成就感。只要认真阅读本教程,结合八爪鱼正则表达式工具实战应用,掌握正则表达式是非常容易的。内容列表:11.1正则表达式-简介11.2正则表达式-简单示例11.3-正则表达式-八爪鱼正则工具11.4正则表达式-语法11.5正则表达式-正则表达式及简单应用11.1正则表达式-简介正则表达式(Regular Expression),按英文直译是“规范化表达”,其作用是将复杂模糊的源数据通过正则表达式转化为简单直观的目标数据。例如:“150ABCD”“一百五ABCD”“One hundred and fiftyABCD”分析思考过程:以上字符串中,我们的源文本数据分别为:““150ABCD”、“一百五ABCD”、“One hundred and fiftyABCD”假设我们要提取目标数据为:字符串中以数字开头的数据那么我们约束条件为:只取字符串中以数字开头的源数据将此约束条件转化为正则表达式为:[0-9](.+)\b其中,[0-9]的语义为开头1位为0-9开头,中间间隔以通配符“.”代替,(.+)语义为字符串长度不做限定,\b的语义为,匹配一个边界。正则后的目标数据:“150ABCD”通过这个简单例子,我们大致了解到了为什么要用正则与正则所能实现的效果,讲通俗点就是,正则只是将我们的意愿(提取字符串中以数字开头的数据)以表达式的形式展现出来([0-9](.+)\b),并最终通过表达式匹配到所需要的目标数据(“150ABCD”),所以灵活运用正则,可以通过简单的方法实现强大的功能。为什么要在八爪鱼中使用正则?在八爪鱼采集数据过程中,受限于网页HTML结构的原因,部分目标数据并不能单独提取出来,这时需要简单的搜索与替换操作来提取与预期搜索结果匹配的确切文本,除此之外,对数据要求精准规范的用户,还能通过正则表达式测试所提取数据字符串的模式、替换文本、基于匹配模式从字符串中提取子字符串等操作。例如:匹配字符串内模式:1.查看字符串是否出现电话号码模式2.查看字符串是否出现网址URL模式替换文本:1.用正则表达式识别字符中特定文本2.用正则表达式完全删除该文本或用其他文本替换它基于匹配模式从字符串中提取子串1.用于查找字符串文本内特定文本11.2正则表达式-简单示例11.匹配任何空白字符,包括空格、制表符、换页符等正则表达式:\s+图 11.2-1 示例12.匹配源文中1-9开头,1-9结尾,中间长度为9的字符串正则表达式:[1-9].{9}[1-9]图 11.2-2 示例23.匹配源文本中http开头,com结尾,中间长度任意的字符串正则表达式:http(.+)com图 11.2-3 示例34.匹配源文本中汉字八爪鱼正则表达式:八爪鱼采集器图 11.2-4 示例45.综合运用假设一个源文本中包含空白字符、数字,那么我们的思路大致如下:1.利用\s+去除空白字符干扰图 11.2-5 综合运用12.利用[0-9].{4}[0-9]匹配所想要的数字图 11.2-6 综合运用2源文本由空白字符、数字、字母、汉字等各种字符组合而成,理解本章示例,合理运行正则表达式,举一反三,对八爪鱼格式化处理数学的学习有良好的促进作用。11.3正则表达式-八爪鱼正则工具在八爪鱼中,为了方便广大用户,我们提供正则工具,用于方便快速的生成正则表达式,在运用时,用户不需要太深入了解正则,只需要明白其常生成的表达式意义并学会灵活修改部分表达式即可。图 11.3-1 正则表达式界面源文本:源数据,待处理的数据开始:所需要匹配字符串的开头包含开头:正则表达式匹配后的结果是否包含开头结束:所需匹配字符串的结尾包含结束:正则表达式匹配后结果是否包含结束包含一个:是否字符串中包含某字符图 11.3-2 简单示例一源数据:A123B八爪鱼生成表达式:A(.+?)2{1}(.+?)BA(.+?):在后面语法章节我们会讲,此处解意为:以A开头,()存放的是子表达式:.+?,.为正则中的通配符,+为至少匹配一次或多次,?即只匹配至多一次2{1},此处表示匹配2,而且加了限定符{1}限定了2的次数为1(.+?)B:子表达式:.+?与上面相同,结尾为B图 11.3-2 简单示例二此处与图11.3-2,只有包含不包含的区别,释义如下:(?=A):此处术语为零寬断言,理解为开头不包含,其中(?=)是反向引用,表示缓存但是不利用,意思是虽然匹配到A,但是匹配结果不显示A(?=B):反向引用,匹配但是结果不显示B图 11.3-3 简单示例非贪婪图11.3-3,正则表达式

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档