Моя проблема касается конкретного случая, происходящего в моем проекте.
В моем HTML-документе я хочу заменить <td>
на <td class=”right”>
для всех tds, кроме первого в теге <tr>
.(если внутри тега <tr>
есть <tr>
, то это также необходимо обработать).
Если ввод похож:
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<tr>
вывод должен быть похож на:
<tr>
<td>1</td>
<td class=”right”>2</td>
<td class=”right”>3</td>
<tr>
Я пробовал .. этот код ..
public static string tableFormat(string html) // Add extra attribute to td
{
int start = 0, end = 0, trstart = 0, trend = 0;
// html = CleanUpXHTML(html); // clean unnecessary p tags
while (html.Contains("<tr>"))
{
//start=end;
trstart = html.IndexOf("<tr>", end);
if (trstart == -1)
break;
trend = html.IndexOf("</tr>", trstart);
start = html.IndexOf("<td>", trstart);
end = html.IndexOf("</td>", trend);
while (end < trend)
{
start = html.IndexOf("<td>", end);
html = html.Insert(start + 3, " class=\"right\"");
end = html.IndexOf("</td>", trstart);
}
}
return html;
}