nowdate=new Date();var a1="yyyy-MM-dd hh:mm:ss";
var a2="yy-MM-dd";
var a3="MM/dd/yy hh:mm:ss";
var a4="dd/MM/yyyy";
...日期格式自定义,请问如果用正则表达式来返回一个符合条件(a1,a2,a3等)的字符串?

解决方案 »

  1.   

    \d{2,4}[-\/]\d{2}[-\/]\d{2}\*?(\d{2}:\d{2}:\d{2})?
      

  2.   

    \d{2,4}[-\/]\d{2}[-\/]\d{2,4}(\s+\d{2}:\d{2}:\d{2})?
      

  3.   

    这个麻烦点吧……
    那要不要控制0<月份<=12,0<日期<=31,小时<24,分和秒<60?
    年的头两位数字需不需要验证?
      

  4.   

    正则表达式替换时,月份转换是个麻烦。只提供个a1做例子:var now = new Date();
    WScript.Echo(now);alert(now.toString().replace(/\w+ (\w{3}).*([ \d]{2}) (\d{2}:\d{2}:\d{2}) \w+[+-]\d{4} (\d{4})/, "$4-$1-$2&nbsp;$3").replace(/Jan/, "01").replace(/Feb/, "02").replace(/Mar/, "03").replace(/Apr/, "04").replace(/May/, "05").replace(/Jun/, "06").replace(/Jul/, "07").replace(/Aug/, "08").replace(/Sep/, "09").replace(/Oct/, "10").replace(/Nov/, "11").replace(/Dec/, "12").replace(/ /, "0").replace(/&nbsp;/, " "));