2

我有以下字符串

"[01][23.81][New]"

我试图通过检索括号之间的值并将它们放入数组中来分解字符串,使其看起来类似于以下内容

array({
   "id"        : 01,
   "price"     : 23.81,
   "condition" : "New"
});

这是我到目前为止...

var arr = new Array();
$("input:checkbox.addItm:checked").each(function(){
    //str.split('[');
    arr.push({
       "id": $(this).val()
    });
});

我想知道拆分字符串的最佳方法是什么?

4

1 回答 1

3

您可以改用正则表达式:

var m = "[01][23.81][New]".match(/\[([^\]]+)\]\[([^\]]+)\]\[([^\]]+)\]/);
arr.push({
  id: m[1], // 01
  price: m[2], // 23.81
  condition: m[3]  // New
});
于 2012-08-29T13:52:01.227 回答