Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB5
Expertise: Intermediate
Apr 1, 2000



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Split - A replacement for VB6's Split function under VB5

' A replacement for the Split function under VB4 and VB5
' Note that the return value is a Variant that contains
' an array of strings

Function Split(ByVal Text As String, Optional ByVal Delimiter As String = " ", _
    Optional ByVal Limit As Long = -1, Optional CompareMethod As _
    VbCompareMethod = vbBinaryCompare) As Variant
    ReDim res(0 To 100) As String
    Dim resCount As Long
    Dim length As Long
    Dim startIndex As Long
    Dim endIndex As Long
    length = Len(Text)
    startIndex = 1
    Do While startIndex <= length And resCount <> Limit
        ' get the next delimiter
        endIndex = InStr(startIndex, Text, Delimiter, CompareMethod)
        If endIndex = 0 Then endIndex = length + 1
        ' make room in the array, if necessary
        If resCount > UBound(res) Then
            ReDim Preserve res(0 To resCount + 99) As String
        End If
        ' store the new element
        res(resCount) = Mid$(Text, startIndex, endIndex - startIndex)
        resCount = resCount + 1
        startIndex = endIndex + Len(Delimiter)
    ' trim unused values
    ReDim Preserve res(0 To resCount - 1) As String

    ' return the array inside a Variant
    Split = res()

End Function
Francesco Balena
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date