从VB6中的字符串替换DATE格式的字符串

时间:2019-08-06 12:16:34

标签: vb6

我想替换字符串中的日期。

Dim s As String = 
"06-26-19  06:09PM       <DIR>          10
07-25-19  01:40PM       <DIR>          13
07-02-19  06:08PM       <DIR>          14
07-24-19  05:49PM       <DIR>          15
06-21-19  08:00PM       <DIR>          17"

所需结果:

10 13 14 15 17

1 个答案:

答案 0 :(得分:0)

这演示了一种基本方法,该方法使用Split命令将所需的字符串分解为文本,然后将每一行分为几列。

我用Command1按钮创建了一个新项目来测试代码:

Private Sub Command1_Click()
    Dim s As String

    s = "06-26-19  06:09PM       <DIR>          10" & vbCrLf & _
        "07-25-19  01:40PM       <DIR>          13" & vbCrLf & _
        "07-02-19  06:08PM       <DIR>          14" & vbCrLf & _
        "07-24-19  05:49PM       <DIR>          15" & vbCrLf & _
        "06-21-19  08:00PM       <DIR>          17"

    MsgBox GetData(s)

End Sub

在此示例中,它使用vbCrLf重新创建作为字符串变量发布的字符串,并使用vbCrLf分解为几行,确保与数据中的换行符相同并替换

Function GetData(ByVal p_sDirectoryListing As String) As String
    Dim arrLines As Variant
    Dim arrColumns As Variant
    Dim iCounter As Integer
    Dim sReturn As String

    ' Split string into array, using CRLF as delimiter
    arrLines = Split(p_sDirectoryListing, vbCrLf)

    ' Initialize return value
    sReturn = ""

    For iCounter = 0 To UBound(arrLines)

        ' Break line down into columns
        arrColumns = Split(arrLines(iCounter), " ")

        ' Append space after previous value, you can change this to any delimiter you like
        If sReturn <> "" Then sReturn = sReturn & " "

        ' Append last column to return string
        sReturn = sReturn & arrColumns(UBound(arrColumns))

    Next

    GetData = sReturn

End Function