zoukankan      html  css  js  c++  java
  • validate的使用

    日期和时间验证或者按照指定的格式进行验证,或者使用的标准格式指定的区域设置。

    日期验证 - 验证日期转换为java.util.Date的类型。
    日历验证 - 验证日期转换为java.util.Calendar中的类型。
    时间验证 - 验证时间转换为java.util.Calendar中的类型。

        DateValidator validator=DateValidator.getInstance();
            TimeZone gmt=TimeZone.getDefault();
            Date fooDate=validator.validate("11/01/2010", "dd/MM/yyyy",gmt);
            System.out.println(fooDate);

     

     比较年,月,日

    //比较天的大小,1表示第一个参数大于第二个参数,0表示相等,-1表示第二个参数小于第一个参数
            Date date=new Date(2016, 10, 1);
            Date date2=new Date(2015, 1, 1);
            DateValidator validator=DateValidator.getInstance();
            int c= validator.compareDates(date, date2, null);
            System.out.println(c);
            c=validator.compareYears(date, date2, null);
            System.out.println(c);

     

    数字验证器或者按照指定的格式进行验证,或者使用的标准格式指定的区域设置或使用自定义格式为指定的区域设置。

    Byte Validator - validates numbers converting to a java.lang.Byte type.
    Short Validator - validates numbers converting to a java.lang.Short type.
    Integer Validator - validates numbers converting to a java.lang.Integer type.
    Long Validator - validates numbers converting to a java.lang.Long type.
    Float Validator - validates numbers converting to a java.lang.Float type.
    Double Validator - validates numbers converting to a java.lang.Double type.
    BigInteger Validator - validates numbers converting to a java.math.BigInteger type.
    BigDecimal Validator - validates numbers converting to a java.math.BigDecimal type.

    验证后转换为各自对应的类型

    IntegerValidator validator = IntegerValidator.getInstance();
              Integer fooInteger = validator.validate("1", "#,##0.00", Locale.GERMAN);
              System.out.println(fooInteger);

    • format(number)
    • format(number, pattern)
    • format(number, Locale)
    • format(number, pattern, Locale)
    • 格式化器

    //验证一个值在最小值和最大值的范围内
            IntegerValidator validator = IntegerValidator.getInstance();
            if(validator.isInRange(1, 0, 10)){
                System.out.println(true);
            }else {
                System.out.println(false);
            }

     //货币
            BigDecimalValidator big=CurrencyValidator.getInstance();
            BigDecimal decimal=big.validate("$12.00", Locale.US);
            System.out.println(decimal);

    //百分数转换器

    BigDecimalValidator validator=PercentValidator.getInstance();
            BigDecimal fooPercentValidator=validator.validate("20%", Locale.US);
            System.out.println(fooPercentValidator);

    //正则表达式验证

    1、isValid():返回true/ false指示验证是否成功。

    2、validate():返回的匹配组的字符串值聚集在一起,或者为null

    3、match():方法返回的匹配组的一个String数组,或者如果无效则返回null

    4、Case Sensitivity:匹配可以在任何一个大小写敏感的情况下,或在敏感的方式来完成

    5、Multiple Expressions:创建任意对阵的正则表达式一个正则表达式或集合(字符串数组)

    boolean caseSensitive = false;
              String regex1   = "^([A-Z]*)(?:\-)([A-Z]*)*$";
              String regex2   = "^([A-Z]*)$";
              String[] regexs = new String[] {regex1, regex1};

              // Create the validator
              RegexValidator validator = new RegexValidator(regexs, caseSensitive);

              // Validate true/false
              boolean valid = validator.isValid("abc-def");

              // Validate and return a String
              String result = validator.validate("abc-def");

              // Validate and return a String[]
              String[] groups = validator.match("abc-def");
              System.out.println(valid);
              System.out.println(result);
              System.out.println(groups);

      //ip验证器

    //ip地址
            InetAddressValidator address=InetAddressValidator.getInstance();
            System.out.println(address.isValid("169.254.46.18"));

    //email验证器
            EmailValidator validator =EmailValidator.getInstance();
            System.out.println(validator.isValid("419084525@qq.com"));

  • 相关阅读:
    Swap Nodes in Pairs
    Search for a Range——稍微升级版的二分查找
    Set Matrix Zeroes——常数空间内完成
    Ubuntu系统---C++之Eclipse 开始工程项目
    Ubuntu系统---C++之Eclipse编译器 CDT插件安装
    Ubuntu系统---开机总会显示错误报告处理
    Ubuntu系统---C++之Eclipse IDE 编译器安装
    Ubuntu系统---终端下用g++进行c++项目
    Ubuntu系统---进行C++项目开发的工具
    YOLO---Darknet下的 GPU vs CPU 速度
  • 原文地址:https://www.cnblogs.com/danmao/p/4058689.html
Copyright © 2011-2022 走看看