Function RegExpStr(str As String, Optional strType As Byte = 1) As String
Dim objRegExp As Object
Set objRegExp = CreateObject("VBSCRIPT.REGEXP")
With objRegExp
.Global = True
Select Case strType
Case 1 '只返回汉字
.Pattern = "[^\u4e00-\u9fa5]"
Case 2 '返回除汉字外
.Pattern = "[\u4e00-\u9fa5]"
Case 3 '只返回英文字母,不分大小写
.Pattern = "[^A-Za-z]"
Case 4 '只返回大写英文字母
.Pattern = "[^A-Z]"
Case 5 '只返回小写英文字母
.Pattern = "[^a-z]"
Case 6 '返回指定的标点符号
.Pattern = "[^-?{[|#$%@^&*()+-`%,./';:~!\\d+$]"
Case 7
.Pattern = "\d" '返回除数字外文本
Case 8
.Pattern = "[^\d]" '只返回数字
Case 9 '数字并包含小数点
.Pattern = "[^\d.]"
End Select
RegExpStr = .Replace(str, "")
End With
End Function
Sub test()
MsgBox RegExpStr("我Wo你1235/?他;p-03{]*&\YT人r", 1)
End Sub