jQuery,Javascript正则表达式

时间:2011-12-13 11:00:02

标签: javascript jquery regex

我需要从字母数字字符串中提取数字字符。像字母数字字符串可能像:

cmq-1a,tq-2.1a,vq-001,hq-001a...

从aphanumeric字符串我需要提取数字,我需要从这些数字中获得最大值。请建议如何在JavaScript中执行此操作?

3 个答案:

答案 0 :(得分:2)

这样的事情应该会有所帮助:

var str = "cmq-1a,tq-2.1a,vq-001,hq-001a";

var max = str.match(/\d+/g).sort(function (a, b) {
    return (window.parseInt(a, 10) < window.parseInt(b, 10));
})[0];

// max = 2

这将从String中提取所有正整数,并返回具有最高值的整数。

答案 1 :(得分:0)

我不明白,但是你在寻找一些像这样的人吗?

"cmq-1a,tq-2.1a,vq-001,hq-001a".replace(/\D/g, '')

答案 2 :(得分:0)

以下作品:

var input = 'cmq-1a,tq-2.1a,vq-001,hq-001a';

var temp = input.split(/\D/);
var output = [];

for (var i=0, len = temp.length; i<len;i++){
    if (temp[i] !== ''){

        output.push(parseInt(temp[i],10));
    }
}

console.log(output);

JS Fiddle demo