我有一個表格,用戶可以在一些代碼輸入,然後我想使用Javascript功能來顯示它回到他們在網頁中與自己找到的表達式。我已經使用正則表達式在javascript全部更換爲<>與HTML關鍵字& LT和& GT標籤,但我想正在打開標籤的所有實例,然後用空格或關閉標籤結束以藍色突出。我可以找到我想要的表情,但是我想用「< span>」標籤來包圍它們中的每一個。JavaScript的正則表達式替換標籤
實際的代碼很長,但這裏的一些示例代碼,涵蓋了我想做的事:
//example of what a user might put in
var text = "<div id='main'>Here is some <b>bold</b> text.</div>";
//Replace all tag symbols with html keywords
text = text.replace(/\r?</g,'<');
//now the expression to get what i want to highlight blue
var regExp = /\<[a-zA-Z]+(\s|>)/g;
,現在我想找到的表達,並與自己包裹span標籤內全部更換,像:
text = text.replace(regExp,"<span class='bluefont'>EACH EXPRESSION FOUND</span>");
我不知道該怎麼做,或者如果它甚至有可能只是使用replace,但如果它真的很方便。
我知道有語法高亮外部庫,但我不希望使用任何外部庫這一點。我正在使用[a-zA-Z]而不是在html中檢查合法的標籤名稱,因爲我希望這也適用於xml/xhtml。