Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2051|回复: 4

[已解决]正则表达式

[复制链接]
发表于 2013-1-4 10:34 | 显示全部楼层 |阅读模式
sub text()
dim regex as new regexp
dim sr, mat, m
sr="<td><p>aa</p></td> <td><p>bb</p></td>"
with regex
  .glibal=true
  .pattern="<td>.*?</td>"
set mat=.execute(sr)
for each m in mat
  debug.print m
next m
end with
end sub

以上是代码,其中.pattern="<td>.*?</td>"我不太明白。
“.”:匹配除行符以外的所有字符
“*”:相当于[0,]   意思是可以出现0等任意次
“?”:相当于[0,1] 意思是可以出现0次或者1次
这些基本概念都了解,可是这句话的结果还是搞不懂。请老师们指点一下
最佳答案
2013-1-4 11:42
?在重复性元词[如.?+等]后,表示懒惰匹配,即匹配少的部分
.pattern="<td>.*?</td>"
全部PATTERN的意思即,匹配<TD>标识(这里的禁止贪婪即防止中间匹配语句中出现</td>)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-1-4 11:42 | 显示全部楼层    本楼为最佳答案   
?在重复性元词[如.?+等]后,表示懒惰匹配,即匹配少的部分
.pattern="<td>.*?</td>"
全部PATTERN的意思即,匹配<TD>标识(这里的禁止贪婪即防止中间匹配语句中出现</td>)
回复

使用道具 举报

 楼主| 发表于 2013-1-4 20:35 | 显示全部楼层
老师我还是不太明白啊,能不能说详细点
回复

使用道具 举报

 楼主| 发表于 2013-1-4 20:54 | 显示全部楼层
liuguansky 发表于 2013-1-4 11:42
?在重复性元词[如.?+等]后,表示懒惰匹配,即匹配少的部分
.pattern=".*?"
全部PATTERN的意思即,匹配标识 ...

老师,请问:
.*? 组合起来什么意思啊?
回复

使用道具 举报

 楼主| 发表于 2013-1-4 22:39 | 显示全部楼层
liuguansky 发表于 2013-1-4 11:42
?在重复性元词[如.?+等]后,表示懒惰匹配,即匹配少的部分
.pattern=".*?"
全部PATTERN的意思即,匹配标识 ...

老师 我明白了

点评

明白就好。  发表于 2013-1-5 08:34
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-29 07:54 , Processed in 0.471114 second(s), 15 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表