2

我从数据库中随机解析了这个 date/2 单词:

JAN 2012
FEB 2013
MAR 2014 

等等

我想让变量a中的月份和变量b中的年份。日期在跨度中解析,如下所示:

<span class="rt_item">DEC 2012</span>
4

4 回答 4

10

试试这个代码:

    var str="DEC 2012";
    var mon=str.substr(0,3);
    var year=str.substr(4,7);
于 2012-10-19T07:07:09.207 回答
7

您可以为此使用正则表达式:

var regex = /([A-Z]{3}) ([0-9]{4})/;
var matches = "JAN 2012".match(regex);
var a = matches[1];
var b = matches[2];

否则,使用.split(" ")

var matches = "JAN 2012".split(" ");
var a = matches[0];
var b = matches[1];

这两种方法都在这个小提琴中演示。

于 2012-10-19T04:57:38.377 回答
6
var mySplitResult = "MAR 2014".split(" ");
var x = mySplitResult[0];
var y = mySplitResult[1]; 
于 2012-10-19T05:00:07.933 回答
4

您可以创建一个对象数组,其中包含从跨度派生的 a(月)和 b(年)属性:

var md = [],
    rtitems = $('.rt_item');
for (var i=0;i<rtitems.length;i+1){
  var item = rtitems[i].text().split(' ');
  md.push ({a: item[0], b: item[1]});
}

对于一组跨度,例如:

<span class="rt_item">DEC 2012</span>
<span class="rt_item">JAN 2012</span>
<span class="rt_item">FEB 2013</span>

md[0].a将是'DEC',并且md[0].b 2012

于 2012-10-19T05:02:06.700 回答