2013-10-08 53 views
4

我試圖更換>字符換行符,但無法找出正則表達式部分。換行符的正則表達式

我想:

"<StartTag>\n" 

但不是:

"<StartTag>" 

要被替換

"</EndTag>\n" 

當我使用tags_string.Replace(">", "\n"),它取代了。

任何人都可以請求幫助正則表達式,所以我可以使用Regex.Replace()來代替,以處理EndTag情況?

回答

3

您可以使用下面的模式相匹配的開放標籤:

(<[^/][^>]*>) 

然後用$1\n更換。

Regex.Replace(yourText, @"(<[^/][^>]*>)", "$1\n"); 
+0

謝謝。它的工作就像一個魅力! :) – Annie

-1

爲什麼不簡單地使用字符串的Replace函數。 var s ="</StartTag>"; s = s.Replace("</StartTag>","</StartTag>\n");

+0

大概'StartTag'將不會是靜態的,它將是動態的 –

+0

@SriramSakthivel,這是正確的,它似乎更像是一個評論,而不是一個答案。 – Annie

0

考慮... -

串輸出= Regex.Replace(輸入,@ 「(< = \ < \ W *)>?」,@ 「> \ n」);