"[A1]\n[A2]\n[A3]\n[A4]"
我想按照\n 来截取比如 第一个\n 后的所有内容 ,第二个\n后的所有内容其中 [A1][A2][A3][A4] 的长度是变化的。如果不考虑用split分成数组。。有没有简洁点的方法?

解决方案 »

  1.   

    s = "[A1]\n[A2]\n[A3]\n[A4]";
    ArrayList l = new ArrayList();
    while (s.IndexOf("\n") == 0)
    {
        l.Add(s.SubString(s.IndexOf("\n") + 1));
        s = s.SubString(s.IndexOf("\n") + 1);
    }
    foreach (String s in l)
    {
        Console.WriteLine(s);
    }
      

  2.   

    string str=""[A1]\n[A2]\n[A3]\n[A4]";
    foreach(string s in str.Split(new string[]{"\n"},StringSplitOptions.RemoveEmptyEntries))
    {}
      

  3.   

    try...string test = "[A1]\n[A2]\n[A3]\n[A4]";
    Regex reg = new Regex(@"(?s)\n(?=(.+))");
    MatchCollection mc = reg.Matches(test);
    foreach (Match m in mc)
    {
        richTextBox2.Text += m.Groups[1].Value + "\n----------------------\n";
    }