Now, I add the creation of the matches collection and a single match object. Normally, when you conduct a match, you iterate through the matches collection. But examples of doing that abound on the Web, and un this case, we are only interested in the first match. Just about the only other place I found that documents this is the MSDN page on submatches: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/v...
As usual, any object we create, we symmetrically destroy with the Set Object = Nothing phrase. We use our upper and lower case naming convention to remind ourselves that these are all objects that need destroying.
Option Explicit
Dim myFakeEmail: myFakeEmail = "" & _
"I never received a response from anyone about my inquiry. Never spoke" & vbNewLine & _
"with Scala Re[. Don't remember any correspondence. I wanted to know" & vbNewLine & _
"the price of the software." & vbNewLine & _
"" & vbNewLine & _
"-----Original Message-----" & vbNewLine & _
"From: Scala Sales [mailto:Someone@Scala.com]" & vbNewLine & _
"Sent: Thursday, July 01, 2004 9:05 AM" & vbNewLine & _
"To: Prospect" & vbNewLine & _
"Subject: RE: Company, State, Country" & vbNewLine & _
"" & vbNewLine & _
"Prospect," & vbNewLine & _
"" & vbNewLine & _
"We have noticed the last update to your discussion with Scala Rep" & vbNewLine & _
"regarding ""Company, State, Country"" was 7 days ago. If you" & vbNewLine & _
"like, you can follow the included link..." & vbNewLine & _
"" & vbNewLine & _
"http://www.scala.com/message/?59483475213687" & vbNewLine & _
"" & vbNewLine & _
" ...and log in with the email address noone@nowhwere.com to" & vbNewLine & _
"let us know how your endeavors are proceeding. You can also reach" & vbNewLine & _
"Scala Rep by telephone at (555) 123-4567." & vbNewLine & _
"" & vbNewLine & _
"Regards," & vbNewLine & _
"" & vbNewLine & _
"Scala Sales" & vbNewLine & _
""
WScript.Echo(FindMessageID(myFakeEmail))
Function FindMessageID(messageBody)
Dim MyRegEx
Set MyRegEx = New RegExp
MyRegEx.IgnoreCase = True
MyRegEx.Global = True
MyRegEx.Pattern = "http://www.scala.com/message/"
Dim MyMatches: Set MyMatches = MyRegEx.Execute(messageBody)
Dim FirstMatch: Set FirstMatch = MyMatches(0)
FindMessageID = FirstMatch.Value
Set FirstMatch = Nothing
Set MyMatches = Nothing
Set MyRegEx = NothingEnd Function
|
And now we have some new output to look at...
 |