var s="2007年06月03日";  
var yearone=parseInt( s.substring(0,s.indexOf("年")) );
var monthone=parseInt( s.substring(s.indexOf("年")+1,s.indexOf("月")) );
var dayone=parseInt( s.substring(s.indexOf("月")+1,s.indexOf("日")) );现在只有年能提出来,月和日分别怎么提啊?谢谢!

解决方案 »

  1.   

    var date = "2007年06月03日";
    var reg = /(\d+)年(\d+)月(\d+)日/;
    if (reg.test(date))
    {
        alert("年:" + RegExp.$1 + "\n月:" + RegExp.$2 + "\n日:" + RegExp.$3);
    }
      

  2.   

    var s="2007年06月03日";  
    var yearone=parseInt( s.substr(0,s.indexOf("年")) );
    var monthone=parseInt( s.substr(s.indexOf("年")+1,s.indexOf("月")) );
    var dayone=parseInt( s.substr(s.indexOf("月")+1,s.indexOf("日")) );使用 substr 替换掉 substring,两个用法不一样的。附:它们之间的用法差异
    String.substr(N1,N2)  这个就是我们常用的从指定的位置(N1)截取指定长度(N2)的字符串;
    String.substring(N1,N2) 这个就有点特别了,它是先从N1,N2里找出一个较小的值,然后从字符串的开始位置算起,截取较小值位置和较大值位置之间的字符串,截取出来的字符串的长度为较大值与较小值之间的差。