JOJ
踏踏实实做人,认认真真做事!放纵自己就是毁灭自己!

感觉每次用正则表达式的时候都要网上搜索!感觉很浪费时间! 现就自己写的一些正则表达式和在网上搜罗的正则表达式记录下来!

怎么有这个想法呢?今天写了个正则表达式,用了大半天时间啊! 同时也学习了正则表达式。

/*
             * @author:jinho
             * @date:2010年5月17日
             * @desc:
             * 检测用户输入的日期格式[生日,只输入月/日]
             * 支持输入格式: 
             * jan 1, jan-1, jan/1, 1/1,1 1 ,1-1,
             * 英文忽略大小写,可以简写和全写
             */
            function checkInputBirthday(){
                /*
                 * 此正则表达式分3部分, 1,3,5,7,8,10,12 为一部分,4,6,8,10:为一部分,2月为一部分
                 */
                 var reg = /^((Jan(uary)?|1|Mar(ch)?|3|May|5|July|7|Aug(ust)?|8|Oct(ober)?|10|Dec(ember)?|12)[\s\/-](0?[1-9]|[12]\d|3[01]))|((Feb(ruary)?|2)[\s\/-](0?[1-9]|[12]\d))|((Apr(il)?|4|June|6|Sept(ember)?|8|Nov(ember)?|10)[\s\/-](0?[1-9]|[12]\d|30))/i;
                 //注意这两个正则表达式的区别,之前我把上面的写好了,以为就万事大吉了!后来测试发现了错误,需要用下面的表达式![如果下面的还有错误请指出,错误都是测出来的]
                 //var reg = /^(((Jan(uary)?|Mar(ch)?|May|July|Aug(ust)?|Oct(ober)?|Dec(ember)?)[\s\/-](0?[1-9]|[12]\d|3[01]))|((Feb(ruary)?)[\s\/-](0?[1-9]|[12]\d))|((Apr(il)?|June|Sept(ember)?|Nov(ember)?)[\s\/-](0?[1-9]|[12]\d|30)))$/i;

                 return reg.test("Jan 1");
            }
posted on 2010-05-17 20:46  JoinJ  阅读(280)  评论(0编辑  收藏  举报