Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从包含多个数字的字符串中提取特定数字_Javascript_Jquery - Fatal编程技术网

Javascript 从包含多个数字的字符串中提取特定数字

Javascript 从包含多个数字的字符串中提取特定数字,javascript,jquery,Javascript,Jquery,不幸的是,我找不到这个具体问题的答案。我有一个字符串: 任务[订单属性][4][line\u项目属性][2][id] 我知道如果只有一个数字,我可以使用.match(/\d+/),但是如何从中仅提取2 数字的范围从0到99999999999,因此需要考虑数字的字符串长度,并且字符串的第一个数字(在orders\u attributes之后的数字)也将是动态的。文本和括号是静态的。您必须使用/\d+/g正则表达式模式。这将把所有数字返回到一个数组中 let str=“任务[orders\u at

不幸的是,我找不到这个具体问题的答案。我有一个字符串:

任务[订单属性][4][line\u项目属性][2][id]

我知道如果只有一个数字,我可以使用
.match(/\d+/)
,但是如何从中仅提取
2


数字的范围从0到99999999999,因此需要考虑数字的字符串长度,并且字符串的第一个数字(在
orders\u attributes
之后的数字)也将是动态的。文本和括号是静态的。

您必须使用
/\d+/g
正则表达式模式。这将把所有数字返回到一个数组中

let str=“任务[orders\u attributes][4][line\u items\u attributes][2][id]”;
let pattern=/\d+/g;
让matches=str.match(模式);

console.log(匹配[1])//使用匹配项[1]获取第二个数字。
您可以尝试以下方法

let str=“任务[orders\u attributes][45][line\u items\u attributes][23][id]”;
设pat=/(\[\d+\])/g;
让matches=str.match(pat);

console.log(匹配[1])//使用匹配项[1]获取第二个数字。
请将样本输入和预期输出添加到您的问题中。样本输入是上面的字符串,
任务[orders\u attributes][4][line\u items\u attributes][2][id]
,由此产生的输出将是
2
我不知道我可以将
[1]
添加到匹配模式的末尾。非常感谢。