1
我在我的QTP測試項目中有一個字符串。在某些情況下,這個字符串是明文電子郵件的內容;在其他情況下,它是HTML。在這兩種情況下,我需要從字符串中去除所有網址以匹配Expected案例。QTP/VBScript:如何從字符串中刪除所有URL?
這怎麼能在QTP/VBScript中完成?
我在我的QTP測試項目中有一個字符串。在某些情況下,這個字符串是明文電子郵件的內容;在其他情況下,它是HTML。在這兩種情況下,我需要從字符串中去除所有網址以匹配Expected案例。QTP/VBScript:如何從字符串中刪除所有URL?
這怎麼能在QTP/VBScript中完成?
這應該做的伎倆,雖然你的網址需要以http://或https://爲他們被拾起:
Dim text
text = "<your text with URLs here>"
Dim rgx
Set rgx = New RegExp
rgx.IgnoreCase = True
rgx.Global = True
rgx.Pattern = "([A-Za-z]{3,9})://([-;:&=\+\$,\w][email protected]{1})?([-A-Za-z0-9\.]+)+:?(\d+)?((/[-\+~%/\.\w]+)?\??([-\+=&;%@\.\w]+)?#?([\w]+)?)?"
Dim match, matches
Set matches = rgx.Execute(text)
For Each match in matches
MsgBox match.Value, 0, "Found Match"
Next
的正則表達式匹配的URL來自Chris Freyer's blog並似乎處理你可能遇到的大多數類型的URL。它在我用它進行的測試中效果很好。
這裏已經提出了幾個問題,這些問題與匹配URL和正則表達式有關。我建議你做一個谷歌搜索「正則表達式網址:stackoverflow.com」來獲得一些想法。 – Tomalak 2009-04-21 12:56:24