现在需要从一篇文章中提取出其中第一个图片的地址,这在写图片新闻这类代码的时候很常用,刚看了一篇文章,自己改写了两个函数:

<%
’取得文章内容中第一张图片的函数
Function GetImg(str)
dim regEx,Match,Matches,imgTemp
imgTemp=""
set regEx=New RegExp
regEx.IgnoreCase=true
regEx.Global=false
regEx.pattern="(<)(.[^<]*)(src=)(’|"&CHR(34)&"| )?(.[^’|/s|"&CHR(34)&"]*)(/.)(jpg|gif|png|bmp|jpeg)(’|"&CHR(34)&"|/s|>)(.[^>]*)(>)" ’设置模式。

set Matches=regEx.Execute(str)
If Matches.count>0 Then
   imgTemp=Matches(0)
End if

   GetImg=imgTemp
End Function

’取得文章内容中第一张图片的地址的函数
Function GetImgSrc(str)
dim regEx,Match,Matches,srcTemp
srcTemp=""
set regEx=New RegExp
regEx.IgnoreCase=true
regEx.Global=false
regEx.pattern="src="/(."*)(/.)(jpg|gif|png|bmp|jpeg)(’|"&CHR(34)&"|/s)"

set Matches=regEx.Execute(GetImg(str))
If Matches.count>0 Then
   srcTemp=Matches(0)
End if

   GetImgsrc="/srcTemp"
End Function
%>

测试代码如下:

<%
’测试上面的函数
text="

aaaaaaa1.gif2.gifaaaaaaaaaa

"
’text="

aaaaaaaaaaaaaaaaa

"
If GetImgsrc(text)="" Then
response.Write ("内容中没有图片")
else
response.Write (GetImgsrc(text))
End if
%>