我有一個正則表達式,它與我的數組匹配,但它沒有顯示最後一個括號。我的JS代碼最後一個括號在這個表達式中去掉了哪裏是
function decodeEntities(s){
var str, temp= document.createElement('p');
temp.innerHTML= s;
str= temp.textContent || temp.innerText;
temp=null;
return str;
}
var code = ["<span>","<div>","<pre>","<spat>"];
var string = code.join(", ");
var string_to_pass="<span";
var re = new RegExp("(?:^|\\W)" + decodeEntities(string_to_pass) + "(\\w+)(?!\\w)", "g"), match, matches = [];
while (match = re.exec(string)) {
matches.push(match[0]);
}
console.log(matches);
我看到一個數組中有兩個匹配的控制檯沒有最後一個右括號。
Array [ "<span", " <spat" ]
如何停止刪除最後一個括號>
的腳本。也許是因爲你還沒有列入'string_to_pass`一個右括號請幫助在此先感謝
?我在其餘的正則表達式中看不到一個,那麼爲什麼你會期望匹配? – Aiken 2015-02-12 08:28:23