簡體   English   中英

用正則表達式替換javascript,避免使用html標簽

[英]Javascript multiple replace with regex that avoids html tags

因此,我有一個Java腳本來查找元音並將其大寫。 我想做的是創建一個名為bigBlue的ID,該ID將大寫的值更改為具有特定CSS屬性的藍色字符。

var strMessage1 = Emphathy;
var startDiv = '<div id="bigBlue">';
var endDiv = '</div>';
var newRoot = strMessage1
.replace(/a/g, startDiv+'A'+endDiv)
.replace(/e/g, startDiv+'E'+endDiv)
.replace(/i/g, startDiv+'I'+endDiv)
.replace(/o/g, startDiv+'O'+endDiv)
.replace(/u/g, startDiv+'U'+endDiv)
$("#test").append(newRoot);

這是結果JsFiddle

我的輸出幾乎是亂碼。 我在想的是.replace也在替換startDiv和endDiv的屬性。

在用大藍色div中包含的大寫元音替換元音時,如何避免替換startDiv和endDiv值?

嘗試使用功能來代替像這樣的直接符號

var newRoot = strMessage1.replace(/[aeiou]/g, function(sym){return startDiv+sym.toUpperCase()+endDiv});

jsfiddle上的樣本

如果您希望字符位於一行上,請使用<span>而不是<div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM