如何实现split对数组的操作?

rainwangbest 2003-09-15 03:14:36
现有一由";"分隔的字符串,要将其存入四个数组中,使用的是
strTemp = Split(str, ";")
text1.text=strTemp(0)
text2.text=strTemp(1)
text3.text=strTemp(2)
text4.text=strTemp(3)
可是当str字符串里没有";",会出现数组越界的错误。
我的要求是是str字符串没有";"时,则只存入strTemp(0)
如果只有一个";"时,则存入strTemp(0)和strTemp(1)
如果有两个";"时,则存入strTemp(0)和strTemp(1)和strTemp(2)
如果有三个";"时,则存入strTemp(0)和strTemp(1)和strTemp(2)和strtemp(3)
如何编码实现,谢谢
...全文
152 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yijiansong 2003-09-15
  • 打赏
  • 举报
回复
Dim strtemp() As String
Dim str As String

str = "sfsd;dsfsd;dgfd"
strtemp = Split(str, ";")
For I = 0 To UBound(strtemp)
Me.Controls("text" & I + 1).Text = strtemp(I)
Next
fangyds 2003-09-15
  • 打赏
  • 举报
回复
那你先检查Str中是否有“;”啊,没有的话直接放入strtemp(0),
有的话用split函数。
dim intIndex as integer
intIndex=Instr(1,str,";",vbtextcompare)
if intIndex=0 then
strtemp(0)=str
else
strtemp=split(str,";")
end if
有什么不对的地方请各位大虾指正
northwolves 2003-09-15
  • 打赏
  • 举报
回复
一个数组,而并非四个:


strtemp = Split(str, ";")
For I = 0 To UBound(strtemp)
list1.Additem strtemp(I)
Next

lihonggen0 2003-09-15
  • 打赏
  • 举报
回复
Dim strtemp() As String
Dim str As String

str = "sfsd;dsfsd;dgfd"
strtemp = Split(str, ";")
For I = 0 To UBound(strtemp)
Me.Controls("text" & I + 1).Text = strtemp(I)
Next
lihonggen0 2003-09-15
  • 打赏
  • 举报
回复
Dim strtemp() As String
Dim str As String

str = "sfsd;dsfsd;dgfd"
strtemp = Split(str, ";")
For I = 0 To UBound(strtemp)
Me.Controls("text" & I + 1).Text = strtemp(I)
Next
lihonggen0 2003-09-15
  • 打赏
  • 举报
回复
Dim strtemp() As String
Dim str As String
str = "sfsd;dsfsd"
strtemp = Split(str, ";")
For I = 0 To UBound(strtemp)
Me.Controls("text" & I + 1).Text = strtemp(I)
Next

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧