http://www.xxxx.com/aaaaa/http://www.xxxx.com.cn/aaaaa/www.xxxx.com/aaaaa/
www.xxxx.com.cn/aaaaa/
以上的四种情况,我只想取得"aaaaa"这部份怎么写一个通用的截取方法~!

解决方案 »

  1.   

    string str = "http://www.xxxx.com/aaaaa/";  //还可以是"http://www.xxxx.com.cn/aaaaa/","www.xxxx.com/aaaaa/"等
    string resultStr = str.Substring(str.Length - 6, 5);  //结果
      

  2.   

    public string getUrl(str)
    {
    string newstring = str.Substring(str.IndexOf('/')).Remove('/');
    return newstring;
    }
      

  3.   

                String str = "http://www.xxxx.com/aaaaa/";            Int32 index1 = str.IndexOf("com/");
                Int32 index2 = str.IndexOf("cn/");            Int32 index = (index1 > index2? index1:index2);            index1 = str.IndexOf('/', index);
                index2 = str.IndexOf('/', index1+1);            String res = str.Substring(index1+1,index2-index1-1);
                Console.WriteLine(res);
      

  4.   


                string a = "http://www.xxxx.com/aaaaa/";
                string tmp = a.Remove(a.LastIndexOf('/'));
                MessageBox.Show(tmp.Substring(tmp.LastIndexOf('/')+1));
      

  5.   

    string test = "http://www.xxxx.com/aaaaa/";
                string result = test.Substring(test.Length - 6, 5);
    6是倒数第二个/之后的长度,5是aaaaa的长度 6和5是可变的,试试;根据实际情况而定
      

  6.   

    貌似浏览器的自动加http过程 反过来首先判断是不是http://开头是的话去掉http://然后查找剩下字符的从"/"开始到结尾的字符(相对路径吧)如果只要一级,那就要第一个 "/"到第二个"/"之间即可。
      

  7.   

    str = str.ToLower().Replace("http://","");
            str = str.Substring(str.IndexOf("/")+1, str.LastIndexOf("/") - str.IndexOf("/")-1);也可以使用正则
      

  8.   

    string w = str.Substring(str.Length - 6, 5);
                Console.WriteLine(w);
      

  9.   

    3楼的,Remove不可以那样那吧~!他只重写好两种情况,一是指定索引的删除,二是指定索引,长度的删除~!2楼的,aaaaa只是个比喻,长度我也不知道~!所以用长度做文章好像也不行吧!~沙发高歌,我也知道是取最后两个//中间的内容,不会才请教大家啊!~
      

  10.   

    正则表达式:
    @"(?<=com\S*?/)\S+(?=/)"
    另外lz需要说明可能的变化才能写出最佳匹配的表达式.否则只能根据楼主的字面进行匹配了.