VB 的函数 Split( ) 把 字串拆分成数组的问题。

如果有个字串:a="a@s#d@f#g@h#k@l"
如果以“@”符号分割字串: B=Split(a,"@" )
结果是就会有:
B(0)=a
B(1)=s#d
B(2)=f#g
B(3)=h#k
B(4)=l
那么“Split( )
能不能以“@”和“#”同时为分割拆分字串到数组呢?
就向: if a or b then 类似。

应该不能,不过您可以先通过Replace函数来将“@”替换成“#”再用Split函数拆分字符串到数组。
例如:
B = Split(Replace(a, "@", "#", , , vbTextCompare), "#")
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-01-14
你的问题没有想像中的复杂,VB提供了SPLIT函数可以实现你的要求。为了说明问题下面给个例子给你参考:

新建标准EXE

放入一个文本框TEXT1用于让用户输入要分组的字符串。
放入一个COMMAND1
输入以下代码:
Dim A() As String
Private Sub Command1_Click()
A() = Split(Text1.Text, "-", -1, vbTextCompare)'以“-”将字符串分割后存到一个以下标为0开始的数组里
Dim i As Integer
For i = 0 To UBound(A()) 'UBound(a())返回数组的最大下标LBound(A())返回最小下标

Debug.Print A(i) '将结果打印到即时窗口

Next i
End Sub
看,你要的功能只用了一行代码便搞定了A() = Split(Text1.Text, "-", -1, vbTextCompare)。
第2个回答  2011-01-13
LS正解
相似回答