Vbscript 以最大长度和特定字符剪切字符串
我有一个字符串,其中包含以“;”分隔的值。不幸的是,程序不能接受超过4000个字符。所以,如果len大于4000,我应该每4000就削减一次 问题是我不能切割一个值。我很幸运,如果我在一个“;”切Vbscript 以最大长度和特定字符剪切字符串,vbscript,Vbscript,我有一个字符串,其中包含以“;”分隔的值。不幸的是,程序不能接受超过4000个字符。所以,如果len大于4000,我应该每4000就削减一次 问题是我不能切割一个值。我很幸运,如果我在一个“;”切 那么,如何在不削减一个值的情况下获得少于4000的值呢?您可以从位置4000开始,然后反向工作,直到找到一个逗号。此代码创建一个测试字符串,但您可以将s值设置为任何值: Dim sValues Dim iCounter For iCounter = 1 To 1000 If sValues
那么,如何在不削减一个值的情况下获得少于4000的值呢?您可以从位置4000开始,然后反向工作,直到找到一个逗号。此代码创建一个测试字符串,但您可以将
s值设置为任何值:
Dim sValues
Dim iCounter
For iCounter = 1 To 1000
If sValues <> "" Then sValues = sValues & ","
sValues = sValues & "value" & iCounter
Next
If Len(sValues) > 4000 Then
For iCounter = 4000 To 1 Step -1
If Mid(sValues, iCounter, 1) = "," Then
' Last comma before 4000 is found
sValues = Left(sValues, iCounter - 1)
Exit For
End If
Next
End If
MsgBox Right(sValues, 10)
Dim sValues
暗色计数器
对于iCounter=1到1000
如果S值为“”,则S值=S值&“
S值=S值&“值”&I计数器
下一个
如果Len(S值)>4000,则
对于iCounter=4000到1步骤-1
如果Mid(s值,i计数器,1)=“,”则
'找到4000之前的最后一个逗号
S值=左(S值,i计数器-1)
退出
如果结束
下一个
如果结束
MsgBox右侧(S值,10)
我显示最后10个字符以验证字符串是否被正确修剪
另一种方法是使用并重新构建字符串,直到它达到4000。发布一些代码。很好!!拆分函数应该可以满足我的需要。我可以按“;”分割,并在循环中计算长度。