我有一个像这样的字符串
< tr>< td> 14.54.49< / td>< td> SKUTTELG< / td>< td> 001772377777< / td>< td> test< / td>< td> SKUTTELG - mottatt。 Vilt:Okse2,5år+ Jak< / td>< / tr>
我想得到
SKUUTELG 001772377777测试SKUTTELG - mottatt。 Vilt:Okse2,5år+ Jak
需要删除
< TR>< TD>
我试试这样......
var testString = "MY STRING"
var stringArray = testString.Split('<tr><td>');
stringArray.Remove("<tr><td>);
var output = String.Join("<tr><td>", stringArray);
但这不起作用..
答案 0 :(得分:5)
如果我理解你正确而你只需要在这种情况下删除HTML标记,则应该在分割之上替换一个简单的字符串:
var testString = "your string";
var array = str.Split(new string[] { "<tr>", "<td>" },
StringSplitOptions.RemoveEmptyEntries);
return string.Join("", array.Skip(1)).Replace("</tr>", "").Replace("</td>", " ");
基本步骤:
<tr>
和<td>
标记的字符串数组。答案 1 :(得分:1)
如何使用html parser解析html?
string html = @"<tr><td>14.54.49</td><td>SKUTTELG</td><td>001772377777</td><td>test </td><td>SKUTTELG - mottatt. Vilt: Okse 2,5 år + Jak</td></tr>";
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(html);
var tds = String.Join(" ", doc.DocumentNode
.SelectNodes("//td").Select(x => x.InnerText)
.Skip(1));
如果表格中有多个tr
var lines = String.Join("\n",doc.DocumentNode.SelectNodes("//tr")
.Select(node=>String.Join(" ",
node.Descendants("td").Skip(1)
.Select(x=>x.InnerText))));