[英]how to keep html tags and escape < > in string in javascript or c#
我在javascript中有一個字符串,我想使用c#代碼在excel文件中打印。 我的javascript字符串變量是這樣的:
var abc = "<span style=white-space:pre> (StartTime < '2015-05-01 06:00:00' and StopTime > '2015-01-01 06:00:00')</span>";
而且我正在使用正則表達式在html標記之間顯示內容。 如下圖所示:
var regX = /(<([^>]+)>)/ig;
abc = abc.replace(regX, "");
我只想顯示以下輸出:
(StartTime < '2015-05-01 06:00:00' and StopTime > '2015-01-01 06:00:00')
但是在正則表達式上方將<>用作標記,因此向我顯示的輸出是:
(StartTime '2015-01-01 06:00:00')
如果有人對此有解決方案,請幫助我。
如果有人有解決方案在C#代碼中使用正則表達式來獲取所需的輸出,那么他也可能會告訴他的解決方案,因為最終我需要在C#代碼中使用此字符串,因此無論在哪里處理它。
var abc = "<span style=white-space:pre> (StartTime < '2015-05-01 06:00:00' and StopTime > '2015-01-01 06:00:00')</span>"
此變量包含錯誤的HTML。 如果您可以修復錯誤的來源,使其包含有效的HTML,例如:
var abc = "<span style=white-space:pre> (StartTime < '2015-05-01 06:00:00' and StopTime > '2015-01-01 06:00:00')</span>";
這樣一來,生活就會輕松得多。
否則,如果可以確定要保留的<
后面始終帶有空格,則可以使用正則表達式:
/(<\w([^>]+)>)/g
稍微安全一點的是:
/(<\[a-z]([^>]+)>)/ig
根據所有HTML元素,它將查找<
后跟一個在A–Z范圍內的字母。 在某些情況下,在文本中實際使用<
會看起來像一個標簽,因此,修復初始錯誤仍然是一種更好的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.