<link rel="alternate" type="application/rss+xml" title="Flickr: Photos from Gen Kanai RSS feed" href="http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200">
上面的字符串我要把href里面的地址截取出来 不想用正则表达式 望大家踊跃参与

解决方案 »

  1.   

    string input;
    int pos = input.IndexOf("http");
    string link = input.Substring(pos, input.length-pos);
    link = link.Trim('\"',">");
      

  2.   

    public string GetHrefString(string str)
            {
                int startIdx = str.IndexOf("href=");
                int endIdx = str.IndexOf("\"",startIdx+"href=".Length);
                return str.Substring(startIdx+"href=".Length,endIdx-startIdx+"href=".Length);
            }
      

  3.   

    string s = http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200";
    成功!!...
      

  4.   

    href="http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200"
    找到href,然后得到双引号之间的字符串。
    修改一下lxhvc() 的代码:
    public string GetHrefString(string str)
            {
                int startIdx = str.IndexOf("href=");
                int endIdx = str.IndexOf("""",startIdx+"href=".Length);
                return str.Substring(startIdx+"href=".Length,endIdx-startIdx+"href=".Length);
            }
      

  5.   

    str.Substring(str.IndexOf("href=")+1,str.IndexOf("\">")-str.IndexOf("href=")-1);
    測試過!行
      

  6.   

    str.Substring(str.IndexOf("href=")+1,str.IndexOf("\">")-str.IndexOf("href=")-1);
    可以的
      

  7.   

    上面的还是不对 http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200
    是要找出上面的地址
      

  8.   

    s.Remove(0, s.IndexOf("http")).Substring(0, s.Remove(0, 100).Length - 2)
      

  9.   

    s.Remove(0, s.IndexOf("http")).Substring(0, s.IndexOf("http").Length - 2)
      

  10.   

    测试过不对 
    ref="http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200结果多了ref="
      

  11.   

    str.Substring(str.IndexOf("href=") + 1, str.IndexOf("id=") -str.IndexOf("href=") -2);
      

  12.   

    <link rel="alternate" type="application/rss+xml" title="Flickr: Photos from Gen Kanai RSS feed" href="http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200">这个东东不就像个xml文档吗??href 是link元素的一个属性,,,可以通过访问其属性来获提href:
    提示:
    if(xmlReader.NodeType==XmlNodeType.Element)
    {
      while(xmlReader.MoveToNextAttribute())
      {
         if (xmlReader.Name=="href"){ string s=xmlReader.Value;}
    }
    }s就是你想要的
      

  13.   

    str.Substring(str.IndexOf("href=") + 6, str.IndexOf("id=") -str.IndexOf("href=") -7);
    這個正确吧!
      

  14.   

    Qim(莫名) ( ) 信誉:100    Blog 如果中间来一个 href= "就残了
      

  15.   

    using System.Xml;
            
            XmlReader xmlReader = new XmlReader();
            if (xmlReader.NodeType == XmlNodeType.Element)
            {
                while (xmlReader.MoveToNextAttribute())
                {
                    if (xmlReader.Name == "href") { string s = xmlReader.Value; }
                }
            }
    同意gezichong(鸽子虫)的方法!
      

  16.   

    当前上下文中不存在名称“xmlReader”命名空间也加了为什么会这样
      

  17.   

    To
    测试过不对 
    ref="http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200结果多了ref="
    ---------------
    不好意思看错了
    s.Remove(0, s.IndexOf("http")).Substring(0, s.Remove(0, s.IndexOf("http"))- 2)
      

  18.   

    s.Remove(0, s.IndexOf("http")).Substring(0, s.Remove(0, s.IndexOf("http")).Length- 2)
      

  19.   

    str.Substring(str.IndexOf("href=") + 6, str.IndexOf("id=") -str.IndexOf("href=") -7);

    XmlReader xmlReader = new XmlReader();
    換成這個:
    XmlTextReader xmlReader = new XmlTextReader(str);
      

  20.   

    s.Remove(0, s.IndexOf("http")).Substring(0, s.Remove(0, s.IndexOf("http"))- 2)
    你的s是什么类型的 我看你这个练编译都不会通过
      

  21.   

    你自己拿出来一个html代码片断来让大家帮你截取,你说s能是什么,闭眼也能猜到吧,我晕死!
    算我没来过!
      

  22.   

    s.IndexOf("http"))- 2 你这个编译都不能通过
      

  23.   

    str.Substring(str.IndexOf("href=")+1,str.IndexOf("\">")-str.IndexOf("href=")-1);
    这个好用
      

  24.   

    string s=....
    Regex reg = new Regex("(?<=(href[\\s]*=[\\s]*\"))[\\s\\S]*?(?=(\"))",RegexOptions.IgnoreCase);
    Console.WriteLine(reg.Match(s).Value);
      

  25.   

    XmlReader xmlReader = new XmlReader();
            if (xmlReader.NodeType == XmlNodeType.Element)
            {
                while (xmlReader.MoveToNextAttribute())
                {
                    if (xmlReader.Name == "href") { string s = xmlReader.Value; }
                }
            }
    这个为什么编译不能通过
      

  26.   

    str.Substring(str.IndexOf("href=") + 6, str.IndexOf("id=") -str.IndexOf("href=") -7);

    XmlReader xmlReader = new XmlReader();
    換成這個:
    XmlTextReader xmlReader = new XmlTextReader(str);
      

  27.   

    XmlTextReader成繼承了XmlReader因而能建對象
      

  28.   

    using System;
    using System.Collections;
    using System.Text.RegularExpressions;
    public class MyClass
    {
    public static void Main()
    {
    string s="<link rel=\"alternate\" type=\"application/rss+xml\" title=\"Flickr: Photos from Gen Kanai RSS feed\" href=\"http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200\">";
    System.Text.RegularExpressions.Regex reg = new Regex("(?<=(href[\\s]*=[\\s]*\"))[\\s\\S]*?(?=(\"))",RegexOptions.IgnoreCase);
    Console.WriteLine(reg.Match(s).Value);
    RL();
    }

    #region Helper methods private static void WL(object text, params object[] args)
    {
    Console.WriteLine(text.ToString(), args);
    }

    private static void RL()
    {
    Console.ReadLine();
    }

    private static void Break() 
    {
    System.Diagnostics.Debugger.Break();
    } #endregion
    }
      

  29.   

    str.Substring(str.IndexOf("href=") + 6, str.IndexOf("id=") -str.IndexOf("href=") -7);
    那這用就這吧
      

  30.   

    str.Substring(str.IndexOf("href=") + 6, str.IndexOf("id=") -str.IndexOf("href=") -7);如果link里面的排列顺序不一样这个就没有用了
      

  31.   

    str.Substring(str.IndexOf("href=") + 6, str.IndexOf("?") - str.IndexOf("href=") -6)
      

  32.   

    str.Substring(str.LastIndexOf("href="), str.IndexOf("?") - str.IndexOf("href="))
      

  33.   

    str.Substring(str.LastIndexOf("href"), str.IndexOf("?") - str.IndexOf("href"))
      

  34.   

    string Str = "<link rel=\"alternate\"type=\"application/rss+xml\" title=\"Flickr: Photos from Gen Kanai RSS feed\" href=\"http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200\">";string newStr = Str.Remove(0,Str.IndexOf("href=") + 5);
      

  35.   

    dreamlins(颠覆)
    我需要的是遇到不同的link也能读出href里面的地址
    <link href="http://blog.donews.com/laobai/rss.aspx" title="RSS" type="application/rss+xml" rel="alternate" >
    <link rel="alternate" type="application/rss+xml" title="Flickr: Photos from Gen Kanai RSS feed" href="http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200">
      

  36.   

    string a = "<link rel=\"alternate\"type=\"application/rss+xml\"title=\"Flickr: Photos from Gen Kanai RSS feed\" href=\"http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200\">";            int c = a.IndexOf("http");
                int d = a.IndexOf("\">");
                int f = d - c;
                string b = a.Substring(c,f);
                MessageBox.Show(b);
    这样好像可以..你试看看能否满足你的要求...
      

  37.   

    XmlDocument doc = new XmlDocument(s);
    XmlNode node = doc.SelectSingleNode("link");
    return node.Attribute["href"].value;
      

  38.   

    to:
    XmlReader xmlReader = new XmlReader();
            if (xmlReader.NodeType == XmlNodeType.Element)
            {
                while (xmlReader.MoveToNextAttribute())
                {
                    if (xmlReader.Name == "href") { string s = xmlReader.Value; }
                }
            }
    这个为什么编译不能通过这里的xmlReader不是XmlReader类的实例,而是它的继承类的xmlTextReader的实例,,不好意思,,上面的写的错了,,,我没有定义,,,,sorry!!!应为:
    XmlTextReader xmlReader=new XmlTextReader();
      

  39.   

    <link rel="alternate"type="application/rss+xml" title="Flickr: Photos from Gen Kanai RSS feed" href="http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200">
    上面的字符串我要把href里面的地址截取出来 不想用正则表达式 望大家踊跃参与
    ----
    /*
    使用有限状态机方式解决,并防止出现"<空格link"问题,及大小写问题
    */
    char strlink[]="link";
    char strHref[]="href";
    char strTemp[]="...........(你的语句)...................";
    char strHref[64][256];  //最多存64条链接
    GetHref(char* ptrTemp)
    {
      int nowState=0,i;
      while(ptrTemp++!='\0')
         {
          if(ptrTemp=='<'&&nowState==0)  //查到'<'开始
              nowState=1;
          if(ptrTemp!=0x20&&ptrTemp!=strLink[0]&&
             ptrTemp!=(strLink[0]+'A'-'a')&&nowState==1)  //非空格也非l[L]则不是link
              nowState=0;
          if(ptrTemp!=strLink[0]&&ptrTemp!=(strLink[0]+'A'-'a')&&nowState==1)
            {
              for(i=0;strLink[i]!='\0'&&ptrTemp!='\0';i++)
                 {
                  if((ptrTemp==strLink[i]||ptrTemp==strLink[i]+'A'-'a')&&nowState==i+1)
                      nowState++;
                  else
                      nowState=0;
                  ptrTemp++;
                  }
               if(nowState!=0)
                       nowState=2;
             }
          if(ptrTemp!=strHref[0]&&ptrTemp!=(strHref[0]+'A'-'a')&&nowState=2)  //找到href的h
            {
              for(i=0;strHref[i]!='\0'&&ptrTemp!='\0';i++)
                 {
                  if((ptrTemp==strLink[0][i]||ptrTemp==strLink[1][i])&&nowState==i+2)
                      nowState++;
                  else
                      nowState=2;
                  }
              ptrTemp++;
            if (nowState>2)
                nowState=3;
            }  
          if(ptrTemp!="\""&&nowState=3)   //找引号
             {
               读入到href中...
             }
         }
    }
    引用中
    char *ptrTemp;
    ptrTemp=strTemp;
    GetHref(ptrTemp)
    先写一部分,明天再写,睡觉了
      

  40.   

    string s
    s="<link rel="alternate"type="application/rss+xml" title="Flickr: Photos from Gen Kanai RSS feed" href="http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200">"slipt(s,"href=",2)
      

  41.   

    <link rel="alternate"type="application/rss+xml" title="Flickr: Photos from Gen Kanai RSS feed" href="http://api.flickr.com/services/feeds/photos_public.gne?id=35237090101@N01&amp;format=rss_200">
    上面的字符串我要把href里面的地址截取出来 不想用正则表达式 望大家踊跃参与------------------------------------------------------------------------------------string strInput;
    string strOutput;
    string []strResults;
    strResults = strInput.Split(" ");
    for (int i = 0; i < strResults.Length; i++)
    {
    if (strResults[i].IndexOf("href") >= 0)
    {
    int nPos = strResults[i].IndexOf("\"");
    strOutput = strResults[i].Substring(nPos);
    nPos = strOutput.IndexOf("\"");
    strOutput = strOutput.Substring(0, nPos);
    break;
    }
    }