2013-08-23 149 views
-3

我有一個字符串a="<tr>i'm working in C#<tr/> abcdefghjiklmnopqr ii oo yy uu hh gg rr"b="<td>Finish</td></tr>"。我需要串a作爲在另一個字符串中追加字符串

a="<tr>i'm working in C#<tr/> <td>Finish</td></tr> abcdefghjiklmnopqr ii oo yy uu hh gg rr". 

我們如何追加字符串中的字符串像上面?我之前問過同一個問題,這是錯誤的。 這裏將需要找到第一個「>」字符並在b中追加b。

+3

_「必須找到第一>和追加B」 _但是你想要的結果,在''打完第二個'>'附加灣除此之外,使用'HtmlAgilityPack'動態解析或創建html。 –

+0

你使用asp.net嗎? –

+0

使用indexOf()和insert()方法(http://msdn.microsoft.com/zh-cn/library/k8b1470s.aspx,http://msdn.microsoft.com/zh-cn/library/system.string .insert.aspx)。 – kren470

回答

0
int i = 0;   
while(i < a.Length && (i=a.IndexOf("/>",i)) != -1){ 
    a = a.Insert(i+2,b); 
    i += b.Length; 
} 
+0

這只是模仿'a.Replace(「/>」,「/>」+ b)'。爲什麼這是手動完成的? –

+0

@MikePrecup我想念while循環,實際上這個問題很微不足道 –

0

我想你可以用的indexOf和子

var a="<tr>i'm working in C#<tr/>abcdefghjiklmnopqr ii oo yy uu hh gg rr"; 
var b="<td>Finish</td></tr>"; 

var insertPoint = a.IndexOf("<tr/>")+5; 
var c = a.Substring(0,insertPoint) + b + a.Substring(insertPoint); 

不過說真的,如果你試圖做HTML生成與字符串連接,這將會是一場噩夢做到這一點。嘗試使用Razor或任何其他模板語言。

0

使用插入在特定位置附加字符串。

String findText = @"<tr/>"; 
String a = @"<tr>i'm working in C#<tr/> abcdefghjiklmnopqr ii oo yy uu hh gg rr"; 
String b = @"<td>Finish</td></tr>"; 
int appendLocation = a.IndexOf(findText) + findText.Length; 
String c = a.Insert(appendLocation, b); 
MessageBox.Show(c);