2014-01-17 46 views
0

刪除字符串使用數字和特殊字符刪除與數字和特殊字符的字符串經常expression.Here是我的代碼如何使用正則表達式

var string = "[Account0].&[1]+[Account1].&[2]+[Account2].&[3]+[Account3].&[4]"; 
    var numbers = string.match(/(\d+)/gi); 
    alert(numbers.join(',')); 

這裏輸出爲:0,1,1,2,2 ,3,3,4

但我想下面的輸出1,2,3,4

任何一個可以請幫助我。

感謝,

回答

2

Seemd你想要的是[\ d +],使用EXEC這樣,

var myRe = /\[(\d+)\]/gi; 

var myArray, numbers = []; 

while ((myArray = myRe.exec(string)) !== null) { 
    numbers.push(myArray[1]); 
} 

http://jsfiddle.net/xE265/

0

我想在這種情況下,最簡單的解決辦法是:

\[(\d+)\] 

只是說你只想要括號中的數字。

問候

1

你可以這樣做:

string = "[Account0].&[1]+[Account1].&[2]+[Account2].&[3]+[Account3].&[4]"; 
repl = string.replace(/.*?\[(\d+)\][^\[]*/g, function($0, $1) { return $1 }); 
//=> "1234"