JavaScript |正则表达式 - 读取特定字/行后的数字

时间:2014-03-11 16:25:53

标签: javascript regex jscript

所以我读了其他一些但仍然无法让它发挥作用。 (如果你愿意的话,叫我傻) 无论如何,我基本上想要实现的是让它读取特定匹配背后的所有数字。

让我们说我试图找到数字后面的数字' numberOfApples 3531053' - 我想让它识别单词numberOfApples是否在变量中,然后能够读取后面的数量/数字。

我将在下面写出一个例子:

var str = "asd asd numberOfApples 125912592 aspdla";
var apples = /numberOfApples/;
if(apples.test(str)) {
   console.log(str);
}

现在这会输出' numberOfApples'但是我希望它检查它背后的数字并将它们放入变量或数组中。作为一个整体变量,而不是每个数字都在他们自己。

我真的不知道,如果有人能帮助我,我会很感激!感谢。

3 个答案:

答案 0 :(得分:2)

怎么样;

var str = "asd asd numberOfApples 125912592 aspdla";
var apples = "numberOfApples";

var re = new RegExp(apples + "\\s*(\\d+)");
var m = str.match(re);

if (m != null)
{
    console.log(m[1]);
}    

答案 1 :(得分:0)

var regex = /numberOfApples\s(\d+)/

这会捕获单词后面的数字(如果单词后面有空白字符)

var match = regex.exec(str);
console.log(match[1]);

答案 2 :(得分:0)

var res = /numberOfApples (\d+)/.exec("asd asd numberOfApples 125912592 aspdla");
res = (res !== null) ? res[1] : null;