全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
TCL中的正则表达式主要是两条命令:(1) regexp ?switches? exp string ?matchVar? ?subMatchVar subMatchVar .?在字符串中使用正则表达式匹配。(2) regsub ?switches? exp string subSpec ?varName?在字符串中基于正则表达式的替换介绍一下常用的几个switches:-all 在字符串中进行全部匹配或者替换,会返回匹配或者替换的总次数。-nocase 将字符串中的大写都当成小写看待。-indices 存在子匹配变量中不再是字符,而是index。- 表示后面不再是switches,而是正则表达式的模式了,即使后面紧接着是-。例子:(bin) 29 % set e1 zhou1020zhou1020(bin) 30 % regexp (a-z+)(0-9+) $e1 matchstring sub1 sub21(bin) 31 % puts $matchstringzhou1020(bin) 32 % puts $sub1zhou(bin) 33 % puts $sub21020下面解释一下:Matchstring表示用正则表示式匹配的所有字符串;Sub1表示正则表达式中的第一个子表达式(就是小括号里面的正则表达式,在这里就是(a-z+))匹配的字符串;Sub2表示正则表达式中的第二个子表达式(就是小括号里面的正则表达式,在这里就是(0-9+))匹配的字符串;如果加上-indices,得到的是字符串的索引。(bin) 34 % regexp -indices (a-z+)(0-9+) $e1 matchstring sub1 sub21(bin) 35 % puts $matchstring0 9(bin) 36 % puts $sub11 4(bin) 37 % puts $sub25 8一些需要注意的地方:1. 表示后面是pattern,不再是switches了;2. regsub只能替换第一个匹配的;如果要全部替换,需要加上-all选项;3. 在expect中使用正则表达式:Expect re “a*”:当看见-re选项,就知道后面是正则表达式,这时的*表示匹配0或者多次。就是可以匹配空字符串,a,aa,aaa注意Expect “a*”与上面的区别:默认是global pattern模式,相当于 expect gl “a*”,这时*表示任何一个字符。这时匹配aa,ab,ac。4. 的两种用法:(1) 表示里面是命令(2) 用在正则表达式里面,表示里面是一个范围。如0-9,a-zA-Z5. 的两种用法(1) 表示从头开始匹配(2) 用在正则表达式的里,表示取反。如0-9表示除了数字0-9之外的。6. Quantifiers量词*:表示0到多次+:表示一到多次?:表示0到一次。7. 一个容易弄错的地方.*:表示匹配任何字符串。(因为表示任何字符,而表示次或者多次,故*:表示匹配任何字符串)同时,是贪婪的,它希望得到最长的字符串。如果想关掉贪婪属性,可以在后面加?。:表示尽可能多的,以回车换行符作为结束。看下面的例子:(bin) 44 % set a 111122223333111122223333(bin) 45 % (bin) 45 % regexp .*n $a match1(bin) 46 % puts $match111122223333(bin)可以看出,它在遇到第一行结束的回车换行并没有结束,而是贪婪的匹配到了最后一个回车换行。如果只想得到第一行的,可以关掉的贪婪属性。(bin) 47 % regexp .*?n $a match1(bin) 48 % puts $match1111(bin)也可以用regexp n*n $a match达到目的。(bin) 49 % regexp n*n $a match1(bin) 50 % puts $match1111(bin) 51 %8. backslash转义字符键并不是有几个空格组成的。匹配单个:两个经过解释得到一个,经过正则表达式转义得到:(bin) 51 % regexp + + e11(bin) 52 % puts $e1+如果使用大括号,只使用一个即可:(bin) 53 % regexp + + e11(bin) 54 % puts $e1+(bin) 55 %匹配单个:使用中括号需要个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 出租屋养猫合同范本
- 河南平顶山市文化广电新闻出版局2025年下半年招考事业单位工作人员易考易错模拟试题(共500题)试卷后附参考答案
- 江苏宿迁泗洪县面向普通高校2025年下半年应届生招聘公办学校教师60人易考易错模拟试题(共500题)试卷后附参考答案
- 武汉地质资源环境工业技术研究院限公司2025年下半年人才招考易考易错模拟试题(共500题)试卷后附参考答案
- 个体店合作合同范本
- 兼职就业协议书模板
- 广西百色市田东县2025年下半年事业单位公招拟聘用人员易考易错模拟试题(共500题)试卷后附参考答案
- 兼职签订用工协议书
- 写供气合同范本模板
- 卫生对口帮扶协议书
- 仓储管理招聘题库及答案
- 医院感染预防措施
- 景区物业服务特色方案可行性报告
- 中考英语688高频词大纲词频表
- 中考数学统计类大题训练
- 提高手术患者术前准备完善率医院护理品管圈QCC成果汇报
- YY/T 1244-2014体外诊断试剂用纯化水
- 学术道德与学术规范答案
- 2022-2023学年中图版高中地理选择性必修一课件:3.3 气候的形成及其对自然景观的影响 (24张)
- 六合资料-全年资料-港台内幕天机诗
- 售后配件管理制度
评论
0/150
提交评论