怎么样去除不匹配的标签,在XML(html)没有前标[eg:<D>],但出现了后标[eg:</D>]
<div align='center' id='year_copper_lme_mt'>
<table>
<tr>
<th colspan='6' class='tbltitle'>
copper lme cash and 3 month official seller / settlement prices 2010 <small>usd/mt</small>
</th>
</tr>
<tr>
<td>
avg 7,386.25 <span>7,412.03</span>
</td>
<td>
avg 6,848.18 <span>6,872.45</span>
</td>
<td>
avg 7,462.83 <span>7,494.85</span>
</td>
<td>
avg 7,745.08 <span>7,780.68</span>
</td>
<td>
avg 6,837.68 <span>6,874.08</span>
</td>
<td>
avg 6,499.30 <span>6,530.00</span>
</td>
</td></tr>
<tr>
<td>
</td>
</tr>
<tr>
<th class='tblhead' align='center'>
jul
</th>
<th class='tblhead' align='center'>
aug
</th>
<th class='tblhead' align='center'>
sep
</th>
<th class='tblhead' align='center'>
oct
</th>
<th class='tblhead' align='center'>
nov
</th>
<th class='tblhead' align='center'>
dec
</th>
</tr>
<tr>
<td>
<table>
<tr>
<td>
</td>
<td >
cash
</td>
<td>
3 mo
</td>
</tr>
<tr>
<td>
<span>1</span>
</td>
<td>
6,354.00
</td>
<td>
6,389.00
</td>
</tr>
</table>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td>
</td>
</tr>
</table>
</table>
</div>
红色的为多余的两个后标,现在想在C#程序中通XMLDocument处理以上内容(以上内容老出错误)
以上内容本在同一行上,只是为了表达清楚点才分行的
(如果用正则表达式成功,将在结贴时加分)
------解决方案--------------------
咕~~(╯﹏╰)
神手。~
[解决办法]
首先我在想xmldocument对象是否可以加载这种不规范的格式,
其次如果可以加载的话,我想到了一个思路你可试试。
遍历每个element元素及相子元素,看他们的上一个element是否和下一个element是拥有InnerText属性,如果没有的话,应该会报错,在catch里删除这个错误的对象(当然前提还是xmldocument对象能识别这种)。
我觉得吧,你与其研究这个,不如好好研究下:怎么把你的html代码搞改清楚。
[解决办法]