通过正则表达式javascript分割字符串

时间:2013-10-01 14:46:44

标签: javascript regex string string-split

我有一个包含日期的刺痛,但是日期对象不会接受它,所以我必须将它变成有效的格式。

我试过这个

"20130820".split(/^[a-z0-9]{4}[a-z]{2}[a-z0-9]{2}?$/) 

它应该给出一个像

这样的数组
["2013", "08", "20"]

知道我哪里错了吗?

3 个答案:

答案 0 :(得分:3)

您想使用.match而不是.split。您需要捕获每个组,第二个字符类也应该a-z,它可能只是\d

"20130820".match(/^(\d{4})(\d{2})(\d{2})$/).slice(1)

答案 1 :(得分:1)

为什么要拆分,您可以使用String#match

var m = "20130820".match(/^(\d{4})(\d{2})(\d{2})$/);
//=> ["20130820", "2013", "08", "20"]
对于这个简单的工作,你不需要正则表达式只需使用String#substring

答案 2 :(得分:0)

尝试子串

   String str="20130820";
   String  year=str.subString(0,3);
   String  month=str.subString(4,5);
   String  date=Str.subString(6,7);
相关问题