我需要在span标签中获取"4,499.00",而不是SEK部分。
<span id="big-value" class=big-value"> <sup> SEK </sup> 4,499.00 </span>
我使用
Recovered = ie.document.getElementsByTagName("span")(22).innertext
但是当标签包含另一个标签时,它似乎不起作用。它同时返回 SEK 和 4,499.00(它应该,但我不知道如何解决它)。知道如何解决这个问题吗?
您将需要使用标签信息或解析字符串以提取数字。下面的代码使用Regexp
来执行后面的操作
您的文本
Sub Test()
MsgBox CleanStr("<span id=""big-value"" class=big-value""""> <sup> SEK </sup> 4,499.00 </span>")
End Sub
UDF 提取编号
Function CleanStr(StrIn As String) As String
Dim objRegex As Object
Dim objRegexMC As Object
Set objRegex = CreateObject("vbscript.regexp")
With objRegex
.Pattern = "[0-9,.]+"
If .Test(StrIn) Then
Set objRegexMC = .Execute(StrIn)
CleanStr = objRegexMC(0)
Else
CleanStr = "No Match"
End If
End With
End Function