我有一个像下面Javascript:从字符串中提取不同位置的数字?
Original string : results
1apple23oranges : 1 , 23
4apples1oranges : 4, 1
25oranges : 25
通过正则表达式或任何,我无法弄清楚如何获得上述结果在javascript纯数字的字符串。
任何想法请问?
我有一个像下面Javascript:从字符串中提取不同位置的数字?
Original string : results
1apple23oranges : 1 , 23
4apples1oranges : 4, 1
25oranges : 25
通过正则表达式或任何,我无法弄清楚如何获得上述结果在javascript纯数字的字符串。
任何想法请问?
'1apple23oranges'.match(/\d+/g);
使用正则表达式\d+
,这意味着从0到9(\d
)任何数字重复一次或更多次(+
)。限定符g
将使搜索全局(即:不要停止在第一个命中)。
resultArray = original.match(/\d+/g);
这将导致所有的数字数组,加入他们使用“”分隔符,使用功能join()
resultString = original.match(/\d+/g).join(", ");
使用匹配函数的字符串对象与表达.match(/\ d + /克)。
例如, var a =“1apple23oranges”
var res = a.match(/\d+/g)
您可以用逗号分隔每个值。
尝试"1apple23oranges".match(/(\d+)/g);
注意:如果你需要的数字为整数值,那么你必须使用parseInt
了点。如果您使用的是jQuery,那么您可以拥有数组中的所有整数
var arr = new Array();
$.each("1apple23oranges".match(/(\d+)/g), function(index, value){ arr.push(parseInt(value, 10));});
+1,Clear solution – diEcho 2011-05-10 07:04:23