c# - Replacing td tags with td and attributes -
my problem particular case occurring in project.
in html document, want  replace <td>  <td class=”right”> tds except first 1 in <tr> tag. (if there <tr> inside <tr> tag needs handled).
if input like:
<tr>   <td>1</td>   <td>2</td>   <td>3</td> <tr>   output should like:
<tr>   <td>1</td>   <td class=”right”>2</td>   <td class=”right”>3</td> <tr>   i have tried..this code..
public static string tableformat(string html)   // add attribute 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;         }      
just call function main: note:this code work valid html i.e xhtml
 public static string tableformat(string xhtml)     {         int start = 0, end = 0, trstart = 0, trend = 0;          while (trstart != -1)         {             //start=end;             trstart = xhtml.indexof("<tr>", end);             if (trstart == -1)                 break;             trend = xhtml.indexof("</tr>", trstart);             start = xhtml.indexof("<td>", trstart);             end = xhtml.indexof("</td>", start);             while (end < trend)             {                 //int tracktr = 0;                 start = xhtml.indexof("<td>", end);                 if (start > trend)                     break;                 xhtml = xhtml.insert(start + 3, " class=\"right\"");                  end = xhtml.indexof("</td>", start);              }         }         return (xhtml);     }      
Comments
Post a Comment