使用正则表达式提取英文字母和数字

时间:2018-12-30 15:53:02

标签: regex excel vba excel-vba

我有以下代码从混合的英语和阿拉伯字母中提取英语字母

Sub Test()
Dim a           As Variant
Dim i           As Long

With Cells(1).CurrentRegion.Resize(, 3)
    a = .Value
    With CreateObject("VBScript.RegExp")
        .Global = True
        For i = 1 To UBound(a, 1)
            .Pattern = "[^\w_ ]+"
            a(i, 3) = Trim$(.Replace(a(i, 1), ""))
        Next i
    End With
    .Value = a
End With
End Sub

我需要更改模式以便也能够提取数字。.所以我需要提取英文字母和数字。

1 个答案:

答案 0 :(得分:1)

\d之后添加\w。如果数字在阿拉伯字母之间,则可以提取数字。

来自@Tiw / OP的评论。