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

标签 regex 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

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

最佳答案

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

来自 @Tiw/OP 的评论。

关于regex - 使用正则表达式提取英文字母和数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53979080/

相关文章:

excel - 使用 VBA 将 Excel 数据保存为 csv - 删除文件末尾的空白行以保存

excel - VBA : How to delete a file?

python - 用 ply 转义正则表达式中的空格?

excel - 如何将 Excel VBA 放入 git

vba - VBA中的左函数

excel - 在 Excel 单元格中插入图像

php - 如何匹配不包含某些子字符串的字符串组

JavaScript 正则表达式/速记/vs Regexp(string)

Javascript匹配字符并在之间添加空格

excel - 将多个值写入一个单元格 - VBA