有一个字符串如下:ads,jkl,"adfsa,lkl,ljd","jack,ljd",jklds
 如何把它显示成如下格式
ads
jkl
adfsa,lkl,ljd
jack,ljd
jklds
小弟先谢谢各位了!

解决方案 »

  1.   

    textBox1.Text = "ads,jkl,\"adfsa,lkl,ljd\",\"jack,ljd\",jklds";
    Regex re=new Regex(@"\042[a-z,]+\042|[a-z]+");
    MatchCollection mco=re.Matches(textBox1.Text);
    foreach(Match ma in mco)
    {
    treeView1.Nodes.Add(ma.Value.Replace("\"",""));
    }
      

  2.   

    应用string 中的成员函数format就可以解决输出指定的格式。
    你可以试一下。
      

  3.   

    String aa="ads,jkl,\"adfsa,lkl,ljd\",\"jack,ljd\",jklds";
    String[] bb ; 
    bb = aa.Split(',');
    string[] ok;
    ok = new string[bb.Length];
    String tmp= string.Empty ;
    int count=0; //统计字符串
    bool bl=true;
    int j =0; for(int i= 0 ; i<bb.Length ;i++)
    {

    if (bb[i].IndexOf('"')>=0)
    {
    if(bl)   //开始引号
    {
    ok[j] = bb[i].Substring(1);
    bl=false;
    }
    else //结束引号
    {
    ok[j] += "," + bb[i].Substring(0,bb[i].Length-1);
    bl=true;
    j++;
    }

    }
    else
    {
    if(bl)
    {
    ok[j] = bb[i];
    j++;
    }
    else
    {
    ok[j] += "," + bb[i];
    }

    }
    }
    for( int i =0 ; i<ok.Length ; i++)
    {
    if(ok[i] != null)
    {
    count ++;
    }
    }
    for (int i =0 ;i< count ; i++)
    {
    MessageBox.Show (ok[i]);

    }我试过了,可以实现的, OK数组中放的就是你要的东东,不过要记得,count个是有用的,而其它为null