提问者:小点点

JavaScript正则表达式-从word旁边提取数字


我已经很久没有接触正则表达式了。 这很简单,但我对此感到十分不安。

我从DOM“min20,max40”中得到一个字符串,如下所示。 我希望能够在JavaScript中使用正则表达式来提取min旁边的整数和max旁边的整数,并将其放入单独的变量minmax中。 我想不出做这件事的方法。

感谢曾经帮助过我的人,你将是一个生命的拯救者!

干杯


共3个答案

匿名用户

您可以使用:

var input   = "MIN20, MAX40";
var matches = input.match(/MIN(\d+),\s*MAX(\d+)/);
var min = matches[1];
var max = matches[2];

JSfiddle链接

匿名用户

我认为这会奏效:

var matches = "MIN20, MAX40".match(/MIN(\d+), MAX(\d+)/);
var min = matches[1]; 
var max = matches[2];

匿名用户

下面将把“min”和“max”后面的数字提取到名为minsmaxes的整数数组中:

var mins = [], maxes = [], result, arr, num;
var str = "MIN20, MAX40, MIN50";

while ( (result = /(MIN|MAX)(\d+)/g.exec(str)) ) {
    arr = (result[1] == "MIN") ? mins : maxes; 
    num = parseInt(result[2]);
    arr.push(num);
}

// mins: [20, 50]
// maxes: [40]