2016-11-29 66 views
10

我有這個文本。在</ul>標籤前有一個新行。所以我不能用這段代碼去除那一行。無法從文本中刪除新行

str = str.Replace(Environment.NewLine,""); 

但是,這段代碼只用於通常的字符串。

<ul style="list-style-type&#58;circle;"> 
    <li><a class="ms - wikilink" href="/Test.aspx">Test1</a></li> 

</ul> 
+0

我想這一個,但沒有幫助 'Regex.Replace(內容,@ 「\ S +」 的String.Empty);' –

+0

所以你想從輸入的html字符串中刪除所有newLine字符,這可能看起來像上面的代碼,不是嗎? –

+0

是啊,這'str = str.Replace(Environment.NewLine,「」);'沒有幫助。 –

回答

9

你可以用正則表達式刪除它容易

Regex.Replace(stringValue, @"\t|\n|\r", ""); 

我希望它有幫助!

1

你可以看一下以下場景

^$ - 這看起來對於任何開始和結束(無字符)或 ^\s+$ - 這看起來對於啓動任何線路,有空白,結束

尋找既多個內部消除查找

(^$|^\s+$) - ()組,|允許在搜索

OR語句

Regex.Replace(content, @"(^$|^\s+$)", String.Empty); - 請記住我的C#是生鏽的,請確保您啓用多行的正則表達式(通常/m)搜索

2

這可能做的伎倆爲您

var regex = new Regex(@"(?<=>)\s+?(?=<)", RegexOptions.Multiline); 
var outstr = regex.Replace(YourHTMLString,"");