简单的用词法分析的方法不就可以了么?匹配了MessageBox.Show后,然后匹配 ( 和 )

解决方案 »

  1.   

    string str = "MessageBox.Show(\"哈哈\",\"提示\");";
    string pattern = @"MessageBox.Show\((.[^\[]*)\);";
    System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(pattern);
    str = regex.Replace( str, "$1", -1 );
      

  2.   

    yufenfeila(雨纷飞啦) 你的方法不行啊 不润序 \ 和 [ 是什么意识?
    没人答啊!
      

  3.   

    我已经测试过了,应该符合你的要求
    你可以开两个TextBox试试string str = textBox1.Text;
    string pattern = @"MessageBox.Show\((.[^\[]*)\);";
    System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(pattern);
    str = regex.Replace(str, "$1", -1);
    textBox2.Text = str;如果有什么问题给我短信
      

  4.   

    string str = "MessageBox.Show(\"本次查询[3]条,耗时[13.5]毫秒\",\"提示\");";
    string pattern = @"MessageBox.Show\((.[^\[]*)\);";
    System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(pattern);
    str = regex.Replace( str, "$1", -1 );哥们你怎么试验的啊 为何里面不能有 \[ 想不懂???
      

  5.   

    楼主,我正则写的不完善,下面的是改进过的string str = textBox1.Text;
    string pattern = @"MessageBox.Show\(((.|\n)*)\);";
    System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(pattern);
    str = regex.Replace(str, "$1", -1);
    textBox2.Text = str;这次的没有\[的问题了,并且多行的也可以正确处理,试试看
      

  6.   

    哥们你用
    MessageBox.Show("3","3");MessageBox.Show("3","3");
    看看
    得到
    "3","3");MessageBox.Show("3","3"
      

  7.   

    在C#里是允许这样的
    MessageBox.Show("3","3");MessageBox.Show("3","3");
    虽然很少但也是可能的啊!
      

  8.   

    大哥你这问题还没解决……100分真不好拿,呵呵
    可以最小匹配,修改了一下:string str = textBox1.Text;
    string pattern = @"MessageBox.Show\(((.|\n)*?)\);";
    System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(pattern);
    str = regex.Replace(str, "$1", -1);
    textBox2.Text = str;
      

  9.   

    string str = richTextBox1.Text;
    string pattern = @"MessageBox.Show\((?<content>[\s\S]*?)\);";
    System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(pattern);
    foreach(System.Text.RegularExpressions.Match m in regex.Matches(str))
    MessageBox.Show(m.Groups["content"].Value);
      

  10.   

    这回还查不多,下面的贴有 400 分那等你去拿。
    太晚了、明天验证好使不看看。http://community.csdn.net/Expert/TopicView.asp?id=3750800
    http://community.csdn.net/Expert/TopicView.asp?id=3341708