拆分数据 - String.split参数

时间:2015-09-21 23:06:06

标签: javascript

我是javascript的新手,我正在尝试格式化一些数据。我有以下格式的数据:

"Matt Forte : 17.8C.J. Anderson : 16.5Jamaal Charles : 16.4"

分割它的最佳方法是: string.split(),我会在括号中放什么?

Matt Forte : 17.8
C.J. Anderson : 16.5
Jamaal Charles : 16.4

到目前为止我的代码:

 var playersAndPoints = $('.items').text();
            var playersAndPoints = JSON.stringify(playersAndPoints);
            var re = /Points\s\(PPR\)/gi;
            var formattedPlayers = playersAndPoints.replace(re, " ");
            for(var i = 0; i<formattedPlayers.length; i++){
                if ((typeof(formattedPlayers[i]) === 'number') && (typeof(formattedPlayers[++i]) === 'letter')
                {
                    formattedPlayers.split(formattedPlayers[i])
                }
            }

2 个答案:

答案 0 :(得分:2)

我认为这可能会有点简单处理

首先,我可以看到所有玩家数据最终都有一个数字(+可选的小数点)

与此匹配的RegExp可能是

var re = /[^0-9]+[0-9]+(?:\.?[0-9]+)?/g

现在让我们使用它:

re.match("Matt Forte : 17C.J. Anderson : 16.5Jamaal Charles : 16.4");
// ["Matt Forte : 17", "C.J. Anderson : 16.5", "Jamaal Charles : 16.4"]

答案 1 :(得分:0)

这是一个完成工作的正则表达式:

var data = 'Matt Forte : 17C.J. Anderson : 16.5Jamaal Charles : 16.4'
var sorted = data.match(/(\D)+:\s(\d|\.)+/g)
console.log(sorted)
// [ 'Matt Forte : 17.8',
//   'C.J. Anderson : 16.5',
//   'Jamaal Charles : 16.4' ]