1
我正在使用JavaScript數據庫中的數據進行「mustache light」模板化。數據如下所示:RegExp針對混合文本/數字的頭疼
正如您在{{圖1-1}}中以及在{{圖1-2}}和{{1-3}}中所看到的,hozzfrazz很多比胡扯棒更清潔。
我的正則表達式是\{\{[-a-zA-Z0-9\s]+\}\}/gi
,這在我的腦海裏捕捉到了上面所有的鬍鬚。但在我的功能中唯一被識別的是{{1-3}}
,而不是其他兩個。
任何幫助?
顯然,我需要增加我的功能爲好,因爲正則表達式的工作原理:
var mReg = new RegExp("\{\{[-a-zA-Z0-9\s]+\}\}");
var link_tpl = "<a href='#' rel='@$' class='questionImageLink'>@@</a>";
var html = '';
var i = 1;
while (mReg.test(mText) === true) {
mText = mText.replace(mReg, function (f) {
var inner = f.substr(2, f.indexOf("}") - 2);
return link_tpl.replace("@@", inner).replace("@$", i);
}, "g");
i++;
}
如果你還記得,包括打開定界符它爲我'/'http://jsfiddle.net/JYrhm/ –
你確定嗎?它似乎匹配所有這些:http://jsfiddle.net/4wyGG/ – Joe
你使用'exec'?請記住在「做」的同時而不是之後。 –