欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    正则表达式及在tcl应用.ppt

    • 资源ID:78010185       资源大小:3.11MB        全文页数:14页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    正则表达式及在tcl应用.ppt

    作者:XXX部门:测试部日期:2011-11-16制作:某某部时间:2011-1-1正则表达式及在正则表达式及在TCL中应用中应用目录基本概念基本概念典型实例演示及分析典型实例演示及分析第五节第五节 tcltcl中的应用一中的应用一 regexpregexp贪婪与非贪婪模式贪婪与非贪婪模式常用正则表达式集常用正则表达式集第六节第六节 tcltcl中的应用二中的应用二 regsubregsub第一节 正则表达式的基本概念正则表达式:指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串(公式)。用处:用来检索和/或替换那些符合某个模式的文本内容。许多程序设计语言都支持利用正则表达式进行字符串操作。组成:有一些普通字符和一些元字符组成(包括汉字)。普通字符包括大小写的字母和数字;元字符是具有特殊含义的字符。元字符元字符描述描述 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符.匹配除“n”之外的任何单个字符。要匹配包括“n”在内的任何字符,可使用”(.|n)”的模式.匹配输入字符串的开始位置。如:hello 匹配“hello world”,但不匹配“world hello”。$匹配输入字符串的结束位置。如:hello$匹配“world hello”,但不匹配“hello world”*匹配前面的子表达式零次或多次。如:zo*能匹配“z”“zo”zoo”。等价于0,。+匹配前面的子表达式一次或多次。如:zo+能匹配“zo”zoo”。等价于1,。?匹配前面的子表达式零次或一次。如:zo*能匹配“z”“zo”。等价于0,1。nnn为非负整数。匹配确定的n次。o2匹配”zoo”中的“oo”,但不能匹配”zo”中的“o”。n,n,n为非负整数。至少匹配n次。o2匹配“zooo”中的“ooo”,但不能匹配”zo”中的“o”。n,mn,m m,n均为非负整数,且n=m。最少匹配n次且最多匹配m次。?当该字符紧跟在任何一个其他限制符(*,+,?,n,n,,n,m)后面时,匹配模式是非贪婪非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串.例如,对于字符串“oooo”,“o+?”将匹配单个“o”,而“o+”将匹配所有“o”。;c1-c2;c1-c2;xyz 匹配方括号中x,y,z的任意一个字符;a-z匹配任意一个小写字符。xyz不匹配方括号中x,y,z的任意一个字符;同理a-z;第二节 常用正则表达式集第二节 常用正则表达式集元字符元字符描述描述(sub_expsub_exp)()之间的表达式被定义为“组”,并且将匹配这个表达式的字符保存到一个临时区域,可被单独引用。(在之后讲的regexp中的substring用到。)x|yx|y 匹配x或y。例如,“z|food”能匹配“z”或“food”。“(z|f)ood”则匹配“zood”或“food”。bb 匹配一个单词边界,也就是指单词和空格间的位置。例如,“erb”可以匹配“never”中的“er”,但不能匹配“verb”中的“er”。BB 匹配非单词边界。“erB”能匹配“verb”中的“er”,但不能匹配“never”中的“er”。dd 匹配一个数字字符。等价于0-9。DD 匹配一个非数字字符。等价于0-9。ff匹配一个换页符。等价于x0c和cL。rr匹配一个回车符。等价于x0d和cM。ss匹配任何空白字符,包括空格、制表符、换页符等等。等价于fnrtv。SS匹配任何非空白字符。等价于fnrtv。ww匹配包括下划线的任何单词字符。等价于“A-Za-z0-9_”。WW匹配任何非单词字符。等价于“A-Za-z0-9_”。unun匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。第三节 贪婪与非贪婪模式贪婪与非贪婪模式影响的是被量词修饰的子表达式的匹配行为。贪婪模式在整个表达式匹配成功的前提下,尽可能多的匹配。非贪婪模式在整个表达式匹配成功的前提下,尽可能少的匹配。属于贪婪模式的量词,也叫做匹配优先量词,包括:“m,n”、“m,”、“?”、“*”和“+”。例子一:aatest1bbtest2cc 正则表达式一:.*匹配结果一:test1bbtest2 正则表达式二:.*?匹配结果二:test1 例子二:csdnfddabckjdsfjabc 正则表达式一:csdn.1,100abc 匹配结果一:csdnfddabckjdsfjabc 正则表达式二:csdn.1,100?abc 匹配结果二:csdnfddabc第四节 典型实例演示及分析 匹配整数:-?1-9d*$匹配浮点数:-?(1-9d*.d*|0.d*)匹配中文字符:u4e00-u9fa5 匹配双字节字符(包括汉字):x00-xff匹配国内电话号码:d3-d8|d4-d7匹配Email:(a-zA-Z0-9_-)+(a-zA-Z0-9_-)+(.a-zA-Z0-9_-)+分析:”“行首.“(a-zA-Z0-9_-)+(a-zA-Z0-9_-)+”匹配a-z或A-Z或0-9或_或-任意字符一次或多次,也可以用w。非元字符,匹配字符本身“.”匹配字符”.”,由于.为元字符,需要通过转义。第五节 tcl中的应用一 regexp -indices-indices 返回值变成了对应的匹配子串在整个字符串中所处位 置的索引。在正则表达式的概念中提到其用处为检索或替换,我们这节讲的regexp正是实现其检索功能。语法:regexpregexp?switches?exp string?matchVar?subMatchVar subMatchVar.?参数switches:-nocasenocase 匹配时不考虑大小写。-expanded-expanded 启用扩展的规则,将空格和注释忽略掉。第五节 tcl中的应用一 regexp-line-line 启用行敏感匹配。正常情况下和$只能匹配缓冲区起始和末尾,对于缓冲区内部新的行是不能匹配的,通过这个开关可以使缓冲区内部新的行也可以被匹配。它相当于同时使用-lnestop和-lineanchor 开关。-about-about 返回正则表达式本身的信息,而不是对缓冲区的解析。返回的是 一个list,第一个元素是子表达式的个数,第二个元素开始存放子表达式的信息。第五节 tcl中的应用一 regexp-all-all 进行最大可能的匹配。返回匹配的个数。匹配字串为最后一次匹配。-start indexstart index 强制从偏移为index开始的位置进行匹配。使用这个开关之后 ,将不能匹配行起始位置。如果使用了-indices开关,则indices表示绝对位置,index表示输入字符的相对位置。-lineanchorlineanchor 改变和$的匹配行为,使可以匹配缓冲区内部的新行。-linestoplinestop 启动行结束敏感开关。使和.可以匹配缓冲区内部的新行。第五节 tcl中的应用一 regexp -表示这后面再没有开关(switchs)了,即使后面有以-开头的参数也被当作正规表达式的一部分。-inline-inline 直接以list的方式返回matchVal和submatchVal值.无需指定matchVal和submatchVal变量。-nocasenocase 匹配时不考虑大小写 参数matchVal:匹配字符串被赋予此变量。参数subMatchVar:匹配子正则表达式(“(sub_exp)”)的字串。第五节 tcl中的应用一 regexp第六节 tcl中的应用二 regsubregsubregsub?switchs?exp string subSpec varname 前三个参数switchs?exp string 和regexp一样。参数subSpec的值来替换字符串string中和正规表达式匹配的部分。参数varname被认为是一个变量,替换后的字符串存入改变量中。谢谢各位!

    注意事项

    本文(正则表达式及在tcl应用.ppt)为本站会员(s****8)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开