VBA 正则表达式提取以 "B0" 开头的 10 个字符的字符串



我正在尝试从以下字符串中提取一个 10 个字符的字符串:

<div class="a-column a-span5 a-span-last"><div class="a-row a-spacing-mini"><span name="B01B5BBNPS">

我想提取B01B5BBNPS。字符串将位于单元格"A1"中。我尝试使用以下代码,但它仅在单元格"A1"仅包含"B01B5BBNPS"时才有效。

Function CleanString(strIn As String) As String
Dim objRegex As Object
Set objRegex = CreateObject("vbscript.regexp")
With objRegex
.Global = True
.Pattern = "^[B0]{2}[w]{8}"
On Error Resume Next
CleanString = .Execute(strIn)(0)
End With
End Function

你的模式不能以"^"字符开头,因为这意味着你的模式只会匹配以"B0"(甚至 0B 或 BB、00,...开头的字符串。没关系(。

你应该试试这个模式:

B0[w]{8}

https://regex101.com/r/zpo3Th/1

最新更新