我遇到了實際困難,但我不是JavaScript專家。我想要做的就是讓一個匹配給定regExp的字符串中的所有匹配數組。正則表達式爲:在javascript中使用正則表達式提取整數陣列
[0-9]+
即。任何整數。
所以如果我通過字符串 「12 09:8:76 ::: 54 12」 我應該得到
ARR [0] = 「12」 ARR [1] = 「09」 ARR [ 2] = 「8」 ARR [3] = 「76」 ARR [4] = 「54」 ARR [5] = 「12」
容易嗎?不適合我!我可以在vb.net中做到這一點沒有問題regexp.matches(字符串)(類似的東西)。我認爲JavaScript方法.exec也會給我一個數組,但它只返回第一個匹配。這是怎麼回事?代碼...
function testIt(){
splitOutSelection2("123:::45 0::12312 12:17");
}
function splitOutSelection2(sSelection){
var regExp = new RegExp("[0-9]+","g");
var arr = regExp.exec(sSelection);
};
謝謝,這個工程。我意識到我應該使用match而不是exec。我在我的regExp聲明中指定了全局修飾符。但這是關鍵。我的代碼可以被重寫爲.. function splitOutSelection2(sSelection)varregExp = new RegExp(「[0-9] +」,「g」); var arr = sSelection.match(regExp); }; – 2010-07-19 09:27:28