我在C#
中有两个字符串 string strEmail="<table id='tbl1'><tr><td>Green</td><td>Red</td></table>
<table id='tbl3'><tr><td>Blue</td><td>Yellow</td></table>
<table id='tbl4'><tr><td>Pink</td><td>White</td></table>";
string tempAppend="<table id='tbl2'><tr><td>black</td><td>grey</td></table>";
现在,我想在tbl1之后立即附加tbl2?
如何在C#中做到这一点?
请帮我解决这个问题。希望它对其他人也有帮助。
答案 0 :(得分:2)
使用 StringBuilder ,试试这个:
string strEmail="<table id='tbl1'><tr><td>Green</td><td>Red</td></table><table id='tbl3'><tr><td>Blue</td><td>Yellow</td></table><table id='tbl4'><tr><td>Pink</td><td>White</td></table>";
string tempAppend="<table id='tbl2'><tr><td>black</td><td>grey</td></table>";
StringBuilder sb=new StringBuilder();
sb.Append(strEmail);
sb.Replace("<table id='tbl3'>",tempAppend +"<table id='tbl3'>");
strEmail = sb.ToString();
答案 1 :(得分:0)
使用StringBuilder
:
string strEmail = @"<table id='tbl1'><tr><td>Green</td><td>Red</td></table>
<table id='tbl3'><tr><td>Blue</td><td>Yellow</td></table>
<table id='tbl4'><tr><td>Pink</td><td>White</td></table>";
string tempAppend = @"<table id='tbl2'><tr><td>black</td><td>grey</td></table>";
var builder = new StringBuilder(strEmail);
var startPoint = "</td></table>";
var index = strEmail.IndexOf(startPoint);
builder.Insert(index + startPoint.Length, tempAppend);
strEmail = builder.ToString();
答案 2 :(得分:0)
或者你可以尝试这个
string strEmail = "<table id='tbl1'><tr><td>Green</td><td>Red</td></table><table id='tbl3'><tr><td>Blue</td><td>Yellow</td></table><table id='tbl4'><tr><td>Pink</td><td>White</td></table>";
string tempAppend = "<table id='tbl2'><tr><td>black</td><td>grey</td></table>";
var inx = strEmail.IndexOf("<table id='tbl3'>");
StringBuilder stringBuilder = new StringBuilder(strEmail);
stringBuilder.Insert(inx, tempAppend);
strEmail = stringBuilder.ToString();