1
數組replaceThis
是用戶生成的,所以我不能寫出不變的正規表達式規則。
但是我如何創建正則表達式規則?
任何想法都是一個很好的解決方案?Javascript/jquery - Regex中的變量
var replaceThis = new Array();
replaceThis[0] = ':)';
replaceThis[1] = 'XD';
replaceThis[2] = '-.-';
replaceThis[3] = 'hello world';
replaceThis[3] = ' a ';
replaceThis[3] = ' B ';
var message = 'text text :) text text -.- and hello world XD and text a btext B text text';
$.each(replaceThis, function(i)
{
var regex = new RegExp (" ??? ","gi");
message = message.replace(regex,'<span class="blue">'+????+'</span>');
});
$('body').append(message+'<hr/>');
遊樂場:http://jsfiddle.net/s7b3r/2/
提前感謝!
傑米
你有什麼需要嗎?將這些字符串包裝在''中? – MaxArt
所以你需要逃避你的正則表達式,使新的RegExp(「(:))」,「gi」)不會中斷? –
@Salman正確;) – user1815934