大家好我有一个小问题我有一个字符串比方说是"qqq,wwww,eee;rrrrr,tttt"我想把他们运用split函数分开为一个数组原来的正则表达式忘记的差不多了不知道这个函数能用正则表达式吗跪谢

解决方案 »

  1.   

    '此代码由“正则测试工具 v1.1.33”自动生成,请直接调用TestReg过程
    Private Sub TestReg()
        Dim strData As String
        Dim reg As Object
        Dim matchs As Object, match As Object    strData = "qqq,wwww,eee;rrrrr,tttt"    Set reg = CreateObject("vbscript.regExp")
        reg.Global = True
        reg.IgnoreCase = True
        reg.MultiLine = True
        reg.Pattern = "[^,;]+"
        Set matchs = reg.Execute(strData)
        For Each match In matchs
            Debug.Print match.Value
            'Debug.Print match.SubMatches(0)
        Next
    End Sub
      

  2.   


    我这样写代码倒是挺干净关键是不知道有分号或者换行,不知道要replace几次所以还是要用到正则表达式
      

  3.   

    我理解错了vb中的replace确实可以替换掉所有出现的某个字符谢谢3楼
      

  4.   

    红色部分不理解,用replace可以将所有的分号替换掉。用正则表达式也是要在字符确定的情况下根据规律以及给定的规则才能写出正确的表达式。4楼代码是以,或;做为分隔符取出各部分内容的。
      

  5.   

    把,和;都replace成vbcrlf
    然后split
      

  6.   


    你可以把所有需要分隔的字符都替换成最后需要分隔的字符。
    s=replace(s,";",",")
    s=replace(s,vbcrlf,",")
    .
    .
    .
    v=split(s,",")