我有一个像
这样的字符串Aaa-bbb cccc//DD
我想拆分tout有一个带
的数组Aaa
bbb
cccc
DD
我想我一直在使用正则表达式和分裂,但我不知道如何处理vba 2003
答案 0 :(得分:3)
你在运行什么应用程序?
以下是VBA编码的示例。您需要为正则表达式引擎使用早期绑定或后期绑定。该代码显示了为每个匹配返回的各种参数。
Dim myRegExp, myMatches, myMatch
Set myRegExp = New RegExp
myRegExp.IgnoreCase = True
myRegExp.MultiLine = True
myRegExp.Global = True
myRegExp.Pattern = "\w+"
Set myMatches = myRegExp.Execute(SubjectString)
For Each myMatch In myMatches
debug.print myMatch.Value
Next myMatch
答案 1 :(得分:0)
在javascript中我们这样做
var str ="Aaa-bbb cccc//DD";
var res = str.split(/\W/);
var newArray = [];
for (var i = 0; i < res.length; i++) {
if (typeof res[i] == 'string' && res[i]) {
newArray.push(res[i]);
}
}
console.log(newArray);
答案 2 :(得分:0)
很难看,但经过测试和运作。
Public Function ArrayTrial()
Dim arr() As String
Dim NewArray As String
Dim MyString As String
Dim X As Integer
Dim CurrString As String
Dim ArrStr As String
NewArray = ""
ArrStr = ""
MyString = "Aaa-bbb cccc//DD"
For X = 1 To Len(MyString)
CurrString = Mid(MyString, X, 1)
If CurrString Like "[a-z.]" Or CurrString Like "[A-Z.]" Or CurrString Like "[0-9.]" Then
ArrStr = ArrStr & CurrString
Else
'Concurrent bogus characters
If Len(ArrStr) = 0 Then
Else
NewArray = NewArray & ArrStr & "|"
End If
'MsgBox arr(X)
ArrStr = ""
End If
Next X
NewArray = NewArray & ArrStr
arr = Split(NewArray, "|")
End Function