分割符为两个,头尾个一个,且不相同,这样的串分割什么方法最快

解决方案 »

  1.   

    start内容...endstart内容...endstart内容...endstart内容...endstart内容...endstart内容...endstart内容...endstart内容...endstart内容...endstart内容...endstart内容...endstart内容...end
    就是把start和end中的内容分割出来
      

  2.   

    string str = "start内容1...endstart内容2...endstart内容3...endstart内容4...endstart内容5...endstart内容6...endstart内容7...endstart内容8...endstart内容9...endstart内容10...endstart内容11...endstart内容12...end";
                var s = System.Text.RegularExpressions.Regex.Matches(str, @"start(.*?)end");
                foreach (Match mt in s)
                {
                    Response.Write(mt.Groups[1].Value + "<br/>");
                }
      

  3.   

    用正则取吧
    @"start(?<内容>[\s\S]*)end"
      

  4.   

    分组不太懂,不过担心只取最长的一组。即str本身。。
    var s = System.Text.RegularExpressions.Regex.Matches(str, @"start([^(end).*]?)end");
      

  5.   

    字符串.Split(new String[]{"start","end"},选择不保留空串就可以了);
      

  6.   

    正则这么简单?试一下这个字符串:string s = "start\"this is the end of movie\"endstart\"shall we start the meeting?\"endstart\"strange word: 'endstart'\"end";
      

  7.   

    将end替换为start,然后全部就用start分割。
      

  8.   

    用 string.indexOf方法 
      

  9.   

    我给你总结下:
      1、用正则,楼上已经给出了代码。
      2、用String.Split();
    要讲效率的话,个人认为,还是用正则吧!