按标签分割值为Html Agility

时间:2013-09-20 05:34:14

标签: c# html-agility-pack

我从ChildNode.InnerHtml获取值为

20th Aug 2013<br>Ojas Systems <br> Pune <br> Software

如何通过HtmlAgilty分割生成的InnerHtml中的值。 我尝试将InnerHtml转换为字符串,但它会抛出错误

  

方法'Write'没有重载需要0个参数

可能是因为未关闭的html标签,但后来可能是什么解决方案 以下是返回的InnerHtml

<a href="http://jobs.monsterindia.com/details/13826093.html?sig=js-1- 4f08ba3c3102de443076cfb01e15745e-1&from=" target="_blank" id="link13826093">.Net java </a>, 20th Aug 2013<br>Ojas Systems Private Limited<br> Pune, 0-0 years: Looking for freshers who is trained in .Net Java.The location will be Pune.Preferably passed in 2012-2013. <br><a href="javascript:findSimilar(13826093)">Similar Jobs</a>&nbsp;&nbsp;-&nbsp;&nbsp;<a href="http://jobsearch.monsterindia.com/searchresult.html?cid=117314;lan=1">All Jobs by this Recruiter</a>&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:void(0)" onclick="javascript:openSocialTwist({EXP:'Experience - 0 to 0 years',LINK:'http://jobs.monsterindia.com/details/13826093.html',COMP:'Company Name - Ojas Systems Private Limited',LOC:'Location - Pune',ROLE:'',KWD:'Key skills - .net java',TTL:'Job Title - .Net java '})">Share this job</a>

3 个答案:

答案 0 :(得分:3)

采用Here形式为我工作

string str = "hai<br/>how<br/>Are<br/>you";

            string[] delim = { "<br/>" };

            string[] spltd = str.Split(delim, StringSplitOptions.None);

答案 1 :(得分:0)

如果您能够检索ChildNode.InnerHtml,您也应该能够将其保存为字符串:

string inner_html = ChildNode.InnerHtml.ToString();

您可以将<br>替换为“/”或其他一些字符(inner_html .replace("<br>,"/")),然后在“/”char上使用简单字符串拆分

修改

如果innerhtml总是采用相同的格式,你可以使用类似的东西

string[] delimiter = new string[] {"<br>"};
string inner_html = ChildNode.InnerHtml.ToString();
int i = inner_html.IndexOf("</a>");
if( i!=-1)
{
   int j = inner_html.IndexOf("<a", i + 4);
   if (j != -1)
   {

      string yourStr = inner_html.Substring(i + 4,j);
      string[] splitedStr = yourStr.split(delimiter, StringSplitOptions.RemoveEmptyEntries); 
   }
}

答案 2 :(得分:0)

string input = "20th Aug 2013<br>Ojas Systems <br> Pune <br> Software";
string[] result = input.Split(new string[]{"<br>"}, StringSplitOptions.None);

输出

20th Aug 2013 
Ojas Systems  
 Pune  
 Software