从javascript中的字符串获取数字

从javascript中的字符串获取数字,javascript,string,numbers,Javascript,String,Numbers,我有一个字符串可以如下所示: 8=0,2=1,5=1,6=0,7=0 我只想提取后跟=0的数字,在本例中为8、6和7 如何在JavaScript中执行此操作?试试: '8=0,2=1,5=1,6=0,7=0' .match(/\d?=(0{1})/g) .join(',') .replace(/=0/g,'') .split(','); //=> [8,6,7] (strings) 或者,如果您可以使用高级: 尝试: 或者,如果您可以使用高级: 请注意,这将返回

我有一个字符串可以如下所示:

8=0,2=1,5=1,6=0,7=0
我只想提取后跟
=0的数字,在本例中为8、6和7

如何在JavaScript中执行此操作?

试试:

'8=0,2=1,5=1,6=0,7=0'
   .match(/\d?=(0{1})/g)
   .join(',')
   .replace(/=0/g,'')
   .split(','); //=> [8,6,7] (strings)
或者,如果您可以使用高级:

尝试:

或者,如果您可以使用高级:

请注意,这将返回一个数字数组,而不是字符串

或者,这里有一个更简洁但更慢的答案:

'8=0,2=1,5=1,6=0,7=0'.match(/\d+(?==0)/g);
答案相同,但返回的是数字而不是字符串:

'8=0,2=1,5=1,6=0,7=0'.match(/\d+(?==0)/g).map(parseFloat);
请注意,这将返回一个数字数组,而不是字符串

或者,这里有一个更简洁但更慢的答案:

'8=0,2=1,5=1,6=0,7=0'.match(/\d+(?==0)/g);
答案相同,但返回的是数字而不是字符串:

'8=0,2=1,5=1,6=0,7=0'.match(/\d+(?==0)/g).map(parseFloat);
试试这个:

function parse(s)
{
  var a = s.split(",");
  var b = [];
  var j = 0;
  for(i in a)
  {
     if(a[i].indexOf("=0")==-1) continue;
     b[j++] = parseFloat(a[i].replace("=0",""));        
  }
  return b;
}
希望有帮助

试试这个:

function parse(s)
{
  var a = s.split(",");
  var b = [];
  var j = 0;
  for(i in a)
  {
     if(a[i].indexOf("=0")==-1) continue;
     b[j++] = parseFloat(a[i].replace("=0",""));        
  }
  return b;
}

希望有帮助

你试过什么吗?你试过什么吗?他只想要数字而不是
=0
part:)他只想要数字而不是
=0
part:)因为返回数字就足够了<代码>文档。写入
将杀死站点。如果您删除它,我将更新您的答案。@vngek.exe,因为它足以返回数字<代码>文档。写入将杀死站点。如果你删除它,我会更新你的答案。@vngek.exe+1但是你可以像这样简化你的正则表达式
/(\d+=0/g
,然后删除
If(keep==“0”)
+1但是你可以像这样简化你的正则表达式
/(\d+=0/g
,然后删除
If(keep==“0”)