"农光里社区失业人员"一对一"职业指导室","北京市朝阳区","aaa"这是一个字符串 我想把它拆分开 拆成三个字符串:农光里社区失业人员"一对一"职业指导室
北京市朝阳区
aaa一开始我用这样的方式得到这个字符串:Dim mc As System.Text.RegularExpressions.MatchCollection = System.Text.RegularExpressions.Regex.Matches(strLine, """([^""]+)""")Dim fields(mc.Count - 1) As StringFor i = 0 To mc.Count - 1
    fields(i) = mc(i).Groups(1).Value
Next但是这个正则表达式是匹配"" 请问该怎么写才正确呢?谢谢了

解决方案 »

  1.   

    string s = "\"农光里社区失业人员\"一对一\"职业指导室\",\"北京市朝阳区\",\"aaa\"";
    foreach (string match in Regex.Split(s,"(,)"))
    {
       
    }
    Split(',')
      

  2.   

    Dim mc As MatchCollection = Regex.Matches(strLine, """.+?""(?=,|\s*$)")
      

  3.   

    不管用的话你贴出不管用你测试的例子。就像我给你例子那样,别人复制粘贴能看到效果的。而不是这样说,否则我不知道你哪里出错了,我测试显然是可以才贴给你的,你不会是说那个分组1吧。给你的没去掉"",没分组而已,但结果不对么?你要贴出你要什么    Sub Main()
            Dim strLine As String = """农光里社区失业人员""一对一""职业指导室"",""北京市朝阳区"",""aaa"""
            Dim mc As MatchCollection = Regex.Matches(strLine, """(.+?)""(?=,|\s*$)")        Dim fields(mc.Count - 1) As String        For i = 0 To mc.Count - 1
                fields(i) = mc(i).Groups(1).Value
                Console.WriteLine(fields(i))
            Next
            Console.ReadKey()
        End Sub
    输出
    农光里社区失业人员"一对一"职业指导室
    北京市朝阳区
    aa