VB中,如何将字符串分割成所需要的字符?
VB中,如何将字符串分割成所需要的字符?如字符串:S11+S20+S31+DL1,我需要的字符是:S11,S20,S31,DL1,"+"不要。定义两个数组,一个存S1,S...
VB中,如何将字符串分割成所需要的字符?如字符串:S11+S20+S31+DL1,我需要的字符是:S11,S20,S31,DL1,"+"不要。
定义两个数组,
一个存S1,S2,S3,DL;
另一个存1,0,1,1 展开
定义两个数组,
一个存S1,S2,S3,DL;
另一个存1,0,1,1 展开
6个回答
展开全部
dim s as string
dim sv1() as string
dim sv2() as string
s="S11+S20+S31+DL1"
sv1=split(s,"+",-1)
redim sv2(ubound(sv1))
for x= 0 to ubound(sv1)
sv1(x)=left(sv1(x),2)
sv2(x)=right(sv1(x),1)
debug.print sv1(x) & " " & sv2(x)
next
以上程序,保存并输出了数组内容
dim sv1() as string
dim sv2() as string
s="S11+S20+S31+DL1"
sv1=split(s,"+",-1)
redim sv2(ubound(sv1))
for x= 0 to ubound(sv1)
sv1(x)=left(sv1(x),2)
sv2(x)=right(sv1(x),1)
debug.print sv1(x) & " " & sv2(x)
next
以上程序,保存并输出了数组内容
追问
根据你这个方法,我试过好像有点问题。
比如:S10+S11+S20+S21
我的要求是:
sv1分别输出:S1 S1 S2 S2(这个你的方法没有问题);
sv2分别输出:0 1 0 1(你的输出是1 1 2 2).
不知道是哪里出了问题?
追答
我写反了,你把
sv1(x)=left(sv1(x),2)
sv2(x)=right(sv1(x),1)
这两行,反过来就可以了
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不要字符串里面的“+”号可以用replace函数
replace(str,"+","")
replace(str,"+","")
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Private Sub Command1_Click()
Dim s As String
s = "S11+S20+S31+DL1"
Dim a, b
a = Split(s, "+")
b = Array(1, 0, 1, 1)
End Sub
Dim s As String
s = "S11+S20+S31+DL1"
Dim a, b
a = Split(s, "+")
b = Array(1, 0, 1, 1)
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Private Sub Command1_Click()
Dim s As String, a() As String, b() As String, i As Integer
s = "S11+S20+S31+DL1"
a = Split(s, "+")
ReDim b(UBound(a))
For i = 0 To UBound(a)
b(i) = Right(a(i), 1)
a(i) = Left(a(i), 2)
Next
End Sub
Dim s As String, a() As String, b() As String, i As Integer
s = "S11+S20+S31+DL1"
a = Split(s, "+")
ReDim b(UBound(a))
For i = 0 To UBound(a)
b(i) = Right(a(i), 1)
a(i) = Left(a(i), 2)
Next
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Dim str as string
Dim arr as string ()
str = "S11+S20+S31+DL1"
arr = split(str, "+")
Dim arr as string ()
str = "S11+S20+S31+DL1"
arr = split(str, "+")
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询