如何获得Javascript正则表达式匹配的字符串的实际值?

如何获得Javascript正则表达式匹配的字符串的实际值?,javascript,regex,split,Javascript,Regex,Split,我正在尝试编写一个Javascript函数,该函数将获取一个包含(其中0实际上可以是任何数字)的字符串,然后将其删除,并获取其中数字的实际值。例如,如果给出以下句子: 'By now you\'re probably familiar with <0>X, a drawing application that has won an <1>Awards and plenty of attention for its user interface, which has ret

我正在尝试编写一个Javascript函数,该函数将获取一个包含
(其中0实际上可以是任何数字)的字符串,然后将其删除,并获取其中数字的实际值。例如,如果给出以下句子:

'By now you\'re probably familiar with <0>X, a drawing application that has won an <1>Awards and plenty of attention for its user interface, which has rethought the way basic interactions like <2>pinch-to-zoom or <3>color selection should work on a touchscreen.'
这个阵列:

[0, 1, 2, 3]
目前我有:

function(sentence) {
  return sentence.split(/\<[0-9]+\>/).join('');
}
函数(句子){
返回句子。拆分(/\/)。连接(“”);
}
这显然只是返回句子。我需要在标签中包含数字值。有什么办法可以做到这一点吗?

我建议:

function regexAndArray (str) {
    var reg = /(<(\d+)>)/g,
        results = {
            string : '',
            stripped : []
        };
    results.string = str.replace(reg, function(a,b,c){
        results.stripped.push(c);
        return '';
    });
    return results;
}

console.log(regexAndArray('By now you\'re probably familiar with <0>X, a drawing application that has won an <1>Awards and plenty of attention for its user interface, which has rethought the way basic interactions like <2>pinch-to-zoom or <3>color selection should work on a touchscreen.'));
函数regexAndArray(str){
var reg=/()/g,
结果={
字符串:“”,
删除:[]
};
results.string=str.replace(reg,function(a,b,c){
结果:剥离。推(c);
返回“”;
});
返回结果;
}
log(regexAndArray(到现在为止,你可能已经熟悉了X,这是一款因其用户界面而获得奖项和广泛关注的绘图应用程序,它重新思考了触摸屏上的基本交互方式,如缩小到缩放或颜色选择);

参考资料:


它是否也需要神奇地纠正奖项的拼写?你想让它去掉
字符,然后返回一个数组和带有这些数字的句子吗?你可能可以用a来做类似的事情,但是
replace
只会返回一个字符串。您可以使用外部范围变量来收集数组值。
function regexAndArray (str) {
    var reg = /(<(\d+)>)/g,
        results = {
            string : '',
            stripped : []
        };
    results.string = str.replace(reg, function(a,b,c){
        results.stripped.push(c);
        return '';
    });
    return results;
}

console.log(regexAndArray('By now you\'re probably familiar with <0>X, a drawing application that has won an <1>Awards and plenty of attention for its user interface, which has rethought the way basic interactions like <2>pinch-to-zoom or <3>color selection should work on a touchscreen.'));