• 正则表达式 验证 ****年**月


    因为要验证的字符串中 需要包含固定的相关中文汉字
    所以 要先取得这些汉字的ASCII码表示
    然后才能利用这些 构建验证规则
    示例如下

    /*--------------------------------------------------
    * 函數名稱: GetReportDate
    * 目    的: 得到符合报表要求的相关日期
    * 參    數: 
    *           strDate       :日期字符串
    *           reportDateType:可选值 Month ,HalfMonth ,
    *
    *       Eg: GetReportDate("2006年12月","Month") = 20061216
    *           GetReportDate("2006年12月上半月","HalfMonth") = 20061201
    * xx. YYYY/MM/DD   VER     AUTHOR      COMMENTS
    *  1. 2006/12/13   1.00    Free        Create
    ------------------------------------------------------
    */

    function GetReportDate(strDate,reportDateType)
    {
        
    var paraDateType = reportDateType.trim().toLowerCase();    
        
    //判断 reportDateType 是否输入正确
        var TypeEnum = "month,halfmonth";
        
    if ( TypeEnum.indexOf(paraDateType) == -1 ) 
            
    return false;            

        
    //判断 strDate 的格式 是否与reportDateType相匹配
        var paraDate = strDate.trim();    
        
    var regStr,regResult;
        
    var strLength = paraDate.length;
        
    //对于 Month 类的输入日期
        if(paraDateType == "month")
        
    {
    //       var yearASCII = escape("年");//得到 “年” 的ASCII码 \u5E74
    //
           var monthASCII = escape("月"); ////得到 “月” 的ASCII码 \u6708
             regStr = /\d{4}(\u5E74)\d{1,2}(\u6708)/;
        }
        
        regResult 
    = regStr.test(paraDate);    
        
    if!regResult ) 
            
    return ;
            
        
    //进行相关转换
        var returnDate ,tmpYear,tmpMonth,tmpDay;    

        
    // Month 类的输入日期
        if(paraDateType == "month")
        
    {
            tmpYear 
    = paraDate.substr(0,4);
            tmpMonth 
    = paraDate.substr(5,strLength - 6);
            
    if(tmpMonth > 12 ||tmpMonth < 1)
            
    {
                
    return;
            }

            
    else
            
    {
                
    if(tmpMonth.length == 1)
                
    {
                    tmpMonth 
    = "0" + tmpMonth;
                }

            }

            
    //当月的16号
            returnDate = tmpYear + tmpMonth + "16";
        }

        
        
    //返回结果
        return returnDate;  
    }
  • 相关阅读:
    MongoDB+Lucence.net
    hubble+sqlserver
    C# 设计模式 1 接口模式 1.1 适配器模式 IT
    SQLServer2005 中 XML类型方法中 XQuery中变量的参数化匆忙整理 IT
    DoNET 类库设计准则01 名称规则 IT
    GMRES在matlab中的描述
    矩阵良态与病态
    调试vc++的一点感悟
    基于GramSchmidt正交法的广义极小残量法(GMRES)
    VC6 vs2003 vs2005 使用技巧(转)
  • 原文地址:https://www.cnblogs.com/freeliver54/p/591971.html
Copyright © 2020-2023  润新知