vbscript regex get img src URL
What I am trying to do, is get the IMG SRC URL from stringXML below. (i.e. http://www.webserver.com/picture.jpg)
This is what I have, but it is only giving me true/false:
<%
stringXML="<a href="http://www.webserver.com/"><img src="http://www.webserver.com/picture.jpg"/></a><br>Some text here, blah blah blah."
Dim objRegex
Set objRegex = New Regexp
With objRegEx
.IgnoreCase = True
.Global = True
.Multiline = True
End with
strRegexPattern = "\<img\s[^\>]*?src=[""'][^\>]*?(jpg|bmp|gif)[""']"
objRegEx.Pattern = strRegexPattern
response.write objRegEx.Test(stringXML)
If objRegEx.Test(stringXML) = True Then
'The string has a tags.
'Match all A Tags
Set objRegExMatch = objRegEx.Execute(stringXML)
If objRegExMatch.Count > 0 Then
Redim arrAnchor(objRegExMatch.Count - 1)
For Each objRegExMatchItem In objRegExMatch
response.write objRegExMatchItem.Value
Next
End If
End If
%>
I basic开发者_开发百科ally want to ONLY get the IMG SRC value..
Any ideas why this line isn't working 'response.write objRegExMatchItem.Value'?
Cheers, Drew
Try:
Function getImgTagURL(HTMLstring)
Set RegEx = New RegExp
With RegEx
.Pattern = "src=[\""\']([^\""\']+)"
.IgnoreCase = True
.Global = True
End With
Set Matches = RegEx.Execute(HTMLstring)
'Iterate through the Matches collection.
URL = ""
For Each Match in Matches
'We only want the first match.
URL = Match.Value
Exit For
Next
'Clean up
Set Match = Nothing
Set RegEx = Nothing
' src=" is hanging on the front, so we will replace it with nothing
getImgTagURL = Replace(URL, "src=""", "")
End Function
精彩评论