首先,這個問題似乎是有些誤導,因爲你的HTML字符串可以打印出一個堆疊在瀏覽器頂部的三個名字:
Peter
Paul
Jane
因爲幕後的你有三個名字包含在三個div中,彼此堆疊在一起。
<div>Peter</div>
<div>Paul</div>
<div>Jane</div>
此外,它似乎有點像你問「如何將此HTML字符串轉換爲HTML?」所以我假設你是真的要求,是如何從html字符串中去掉html標籤,並且在沒有HTML的情況下將名稱打印在彼此之上?
您可以嘗試同樣的想法,這些變化:
// Replace div tags with Empty Spaces
var htmlString2 = "<div>Peter</div><div>Paul</div><div>Jane</div>";
var noHtmlString = htmlString2.replace(/(<([^>]+)>)/ig," ");
// Peter Paul Jane
// Split values into an array, then process them however you want
var htmlString3 = "<div>Peter</div><div>Paul</div><div>Jane</div>";
var array = htmlString3.replace(/(<([^>]+)>)/ig," ").split(" ");
// ["", "Peter", "", "Paul", "", "Jane", ""]
// Turn your closing div tags into line breaks (remove opening tags)
var htmlString4 = "<div>Peter</div><div>Paul</div><div>Jane</div>";
var lineBreaks = htmlString4.replace(/<div>/ig, "").replace(/<\/div>/ig, "\n");
/*
Peter
Paul
Jane
*/
該名單上的最後一個選項是強制非HTML字符串打印換行符的一種方式,它做什麼,是替代<div>
代碼與一個空的空間,並關閉div標籤</div>
與斷行字符\n
,將創建此字符串:
Peter
Paul
Jane
但這些換行符字符僅在可識別它們的設置中呈現,因此您可以修改腳本以用任何強制換行來獲取所需格式的內容替換結束標記。另外,該示例中的正則表達式僅支持div標籤,如果您想支持更多的html標籤,則必須構建更強大的正則表達式。
最後,您可能已經注意到上述某些解決方案在文本值之前或之間留下空白空間。在構建處理選擇時,這是需要考慮的事情。
不知道這是你在找什麼?
Here is the jsfiddle I used to test this answer.
希望這有助於!
字符串是否總是一個DIV元素的「列表」? – 2014-11-04 22:01:11
你如何「打印」它?請發佈完整的代碼示例。 – j08691 2014-11-04 22:02:17
我可以調整它,所以總是可以有DIV – user984621 2014-11-04 22:02:33