增加支持路径,欢迎批评
StoDim函数为何不直接使用VB的split函数 在ACAD2002中,可以直接使用Split来分隔字符。Split函数
描述
返回一个下标从零开始的一维数组,它包含指定数目的子字符串。
语法
Split(expression[, delimiter[, limit[, compare]]])
Split函数语法有如下命名参数:
部分 描述
expression 必需的。包含子字符串和分隔符的字符串表达式 。如果expression是一个长度为零的字符串(""),Split则返回一个空数组,即没有元素和数据的数组。
delimiter 可选的。用于标识子字符串边界的字符串字符。如果忽略,则使用空格字符(" ")作为分隔符。如果delimiter是一个长度为零的字符串,则返回的数组仅包含一个元素,即完整的 expression字符串。
limit 可选的。要返回的子字符串数,–1表示返回所有的子字符串。
compare 可选的。数字值,表示判别子字符串时使用的比较方式。关于其值,请参阅“设置值”部分。
设置值
compare参数的设置值如下:
常数 值 描述
vbUseCompareOption –1 用Option Compare语句中的设置值执行比较。
vbBinaryCompare 0 执行二进制比较。
vbTextCompare 1 执行文字比较。
vbDatabaseCompare 2 仅用于Microsoft Access。基于您的数据库的信息执行比较。
谢谢两位,早知道split就不会费劲编甚么stodim了
实用函数栏目也有一个适用于VB5的Split自定义函数:Public Function Split(Str As String, Delim As String) As Variant
Dim tokens() As String, pos As Long, i As Integer
pos = InStr(1, Str, Delim, vbTextCompare)
i = 0
Do While pos > 0
ReDim Preserve tokens(0 To i)
tokens(i) = Mid$(Str, 1, pos - 1)
If tokens(i) = Delim Then tokens(i) = ""
Str = Mid$(Str, pos + Len(Delim))
i = i + 1
pos = InStr(1, Str, Delim, vbTextCompare)
Loop
If Len(Str) > 0 Then
ReDim Preserve tokens(0 To i)
tokens(i) = Str
End If
Split = tokens
End Function
我用的就是vb5,我正在奇怪我怎么会不知道有这么一个函数。
是啊,SPLIT函数很方便的!用于多文件选择的时候特别好用!感谢参与,交流就有收获
页:
[1]