求高人修改一个正则函数

漠叔 2010-12-01 10:46:01
Function getImg(Con)
Dim regEx:Set regEx = New RegExp
regEx.IgnoreCase = True
regEx.Global = True
regEx.Pattern = "src\=.+?\.(gif|jpg)"
Set Matches = regEx.Execute(Con)
If regEx.Test(Con) Then
PhotoUrl=Lcase(Matches(0).value)
PhotoUrl=replace(PhotoUrl,"src=","")
PhotoUrl=replace(PhotoUrl,left(PhotoUrl,5),"")
PhotoUrl=replace(PhotoUrl,";","")
getImg=PhotoUrl
End If
End Function


此函数能提取文本中第一张图片地址,如何提取所有图片地址并在每个地址后加入特定字符如[Next]且最后一张不加
...全文
55 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
yousite1 2010-12-01
  • 打赏
  • 举报
回复
不错不错。学习了。
hookee 2010-12-01
  • 打赏
  • 举报
回复

content = "<img src='aaa.gif' border=""1""><img src='bbb.jpg'/><img src='ccc.gif'>"
Response.Write getImg(content)

Function getImg(Con)
Dim regEx:Set regEx = New RegExp
Dim s : s = ""
Dim i
regEx.IgnoreCase = True
regEx.Global = True
regEx.Pattern = "src\s*=\s*('|"")(.+?)(\1)"
Set Matches = regEx.Execute(Con)
For i=0 To Matches.Count-1
If i <> Matches.Count-1 Then s = s & Matches(i).SubMatches(1) & "[Next]<br>" & VbCrLf
Next
getImg=s
End Function
Dogfish 2010-12-01
  • 打赏
  • 举报
回复
楼主给个例子,方便大家回答。
hookee 2010-12-01
  • 打赏
  • 举报
回复

content = "<img src='aaa.gif' border=""1""><img src='bbb.jpg'/><img src='ccc.gif'>"
Response.Write getImg(content)

Function getImg(Con)
Dim regEx:Set regEx = New RegExp
Dim s : s = ""
Dim i
regEx.IgnoreCase = True
regEx.Global = True
regEx.Pattern = "src\s*=\s*('|"")(.+?)(\1)"
Set Matches = regEx.Execute(Con)
For i=0 To Matches.Count-1
s = s & Matches(i).SubMatches(1)
If i <> Matches.Count-1 Then s = s & "[Next]"
s = s & <br>" & VbCrLf
Next
getImg=s
End Function

漠叔 2010-12-01
  • 打赏
  • 举报
回复
2楼的结果:
aaa.gif[Next]
bbb.jpg[Next]
需要的结果是
aaa.gif[Next]
bbb.jpg[Next]
ccc.gif

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧