string str="aaa[12] bbbc[zxt] ccvcvcvxcvx[@5]xxcxcxcxc[f1]dsdsd";
C#中,我想分别得到中括号之间的字符串,如果正则如何写?

解决方案 »

  1.   

    try...string str = "aaa[12] bbbc[zxt] ccvcvcvxcvx[@5]xxcxcxcxc[f1]dsdsd"; 
    Regex reg = new Regex(@"(?<=\[)[^\[\]]+(?=\])");
    MatchCollection mc = reg.Matches(str);
    foreach(Match m in mc)
    {
        richTextBox2.Text += m.Value + "\n";
    }
    /*-----输出-----
    12
    zxt
    @5
    f1
    */
      

  2.   

    try...string str = "aaa[12] bbbc[zxt] ccvcvcvxcvx[@5]xxcxcxcxc[f1]dsdsd"; 
    Regex reg = new Regex(@"(?<=\[)[^\[\]]+(?=\])");
    MatchCollection mc = reg.Matches(str);
    foreach(Match m in mc)
    {
        richTextBox2.Text += m.Value + "\n";
    }
    /*-----输出-----
    12
    zxt
    @5
    f1
    */