[英]Using javascript regex to replace a character entity
我有一組筆記無法正確顯示。 從源頭看,有

換行應該在哪里。 我想將這些實例替換為<br>
。 我已經使用了一個書簽,該書簽可用於諸如ABC
類的純文本字符串,但不適用於給定的字符串。
例如,這很好用:
javascript:(function(){var re = new RegExp("ABC", "g"); document.getElementById('my_span').innerHTML=document.getElementById('my_span').innerHTML.replace(re, "<br>" );})();
而這不是:
javascript:(function(){var re = new RegExp("
", "g"); document.getElementById('my_span').innerHTML=document.getElementById('my_span').innerHTML.replace(re, "<br>" );})();
奇怪的是,后者將采用

的第一個實例

並刪除它而不替換它。
我正在使用的頁面無法加載jQuery,並且我正在公司環境中工作,因此我不願意在外部進行調用。
這是與innerHTML
沒有收到

如我所願? 非常感謝您的幫助。
就像您說的那樣: innerHTML
沒有收到您期望的那些字符。 將字符實體插入HTML會導致它們被解釋,而innerHTML
返回解釋的版本,而不是原始版本。 如果你有:
<p id="test">Cookies & Cream</p>
而您使用:
document.getElementById('test').innerHTML;
你不會得到:
Cookies & Cream
你得到:
Cookies & Cream
同樣,當您在書簽中使用innerHTML
時,您不會得到

:您將獲得回車符和換行符。
要將這些字符與正則表達式匹配,請使用\\r\\n
。 \\r
將匹配回車符( 
)。 \\n
將匹配換行符( &xa;
)。
var regex = new RegExp('\r\n', 'g');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.