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

日期验证 - 验证日期转换为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(numberpattern)
  • format(number, Locale)
  • format(numberpattern, 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"));

validate的使用的更多相关文章

  1. Leetcode 笔记 98 - Validate Binary Search Tree

    题目链接:Validate Binary Search Tree | LeetCode OJ Given a binary tree, determine if it is a valid binar ...

  2. jQuery Validate 表单验证 — 用户注册简单应用

    相信很多coder在表单验证这块都是自己写验证规则的,今天我们用jQuery Validate这款前端验证利器来写一个简单的应用. 可以先把我写的这个小demo运行试下,先睹为快.猛戳链接--> ...

  3. jquery validate表单验证插件-推荐

    1 表单验证的准备工作 在开启长篇大论之前,首先将表单验证的效果展示给大家.     1.点击表单项,显示帮助提示 2.鼠标离开表单项时,开始校验元素  3.鼠标离开后的正确.错误提示及鼠标移入时的帮 ...

  4. jq.validate隐藏元素忽略验证

    jq.validate隐藏元素忽略验证 现在有这样一个需求,当触发某类事件时候,需要在页面中显示input框,但是当不需要加载页面中的元素时候,进行隐藏.在这个需求的前提下,程序中对于input中的输 ...

  5. jq.validate 自定义验证两个日期

    jq.validate 自定义验证两个日期 首先定义有一个表单,date1和date2是属于表单的元素,若date1大于date2,返回false:若date1<date2,返回true.使用j ...

  6. 修改 jquery.validate.js 支持非form标签

    尝试使用markdown来写一篇blog,啦啦啦 源代码传送门:github 在特殊情况下我们使用jquery.validate.js对用户输入的内容做验证的时候,表单并不是一定包含在form之中,有 ...

  7. 表单验证插件之jquery.validate.js

    提到表单验证的插件,第一个想到的就是jquery.validate.js,所以小生想在这里稍微详细地说一下这款插件的具体使用方法,便于理解,我直接附上整段demo的代码(没怎么调样式,主要是看js): ...

  8. validate表单验证插件

    1.引入validate.js包 <script src="xx/xx/jquery.validate.min.js"></script> 2.表单验证 / ...

  9. 基于jQuery的Validate表单验证

    表单验证可以说在前端开发工作中是无处不在的~ 有数据,有登录,有表单, 都需要前端验证~~  而我工作中用到最多的就是基于基于jQuery的Validate表单验证~  就向下面这样~ 因为今天有个朋 ...

  10. Jquery客户端校验——jquery.validate.js

    jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证 ...

随机推荐

  1. 左右GNU Linux企业加密文件系统 eCryptfs简介

    /*********************************************************************  * Author  : Samson  * Date   ...

  2. linux 安装jdk-7u45-linux-x64.tar.gz

    1.官网下载jdk-7u45-linux-x64.tar.gz 载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-dow ...

  3. 军医王-moTestin云测试看好移动医疗行业

    看医生汪谟军:Testin云測在移动医疗产业大有可为 2014/10/21 · Testin · 开发人员訪谈 日常生活可能常常碰到这种情况:突然遇上头疼脑热.小病小痛,去医院又不方便:非常想了解家人 ...

  4. react.js 从零开始(三)JSX 语法及特点介绍

    什么是jsx? jsx = JavaScript + xml jsx 是一种 Ecmascript 的一种新标准. jsx 是一种 带有结构性的语法. jsx 的特点: 1.类xml语法易于理解. 2 ...

  5. 查询oracle sql运行计划,一个非常重要的观点--dba_hist_sql_plan

    该文章的作者给予了极大的帮助长老枯荣,为了表达我的谢意. 这适用于oracle db版本号oracle 10g或者更高的版本号. 之所以说这种看法是非常重要的,因为观点是有之一awrsqrpt报告没有 ...

  6. HDU 2048 号码塔(DP)

    号码塔 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

  7. Delegate成员变量和Event的区别

    上周五有同事问了我一个问题:Delegate和Event有什么区别?具体来说在设计一个类的时候,声明一个事件(Event)和声明一个Delegate类型的成员变量有啥区别.   我的第一反应是没啥区别 ...

  8. 线程同步synchronized

    一Java规划共享多个线程之间数据的能力. 当线程以异步方式訪问共享数据时.有时候是不安全的或者不和逻辑的. 比方卖火车票.同一时刻一个线程在读取数据,另外一个线程在处理数据,当处理数据的线程没有等到 ...

  9. —软测试—(5)计算机系统CPU组成

    事实上,我们不得不很早就接触到电脑系统的知识,但仍然会出现不起眼,现象清醒的认识,非常严重丢分. 要我们花功夫去理解,由于非常多东西我们接触不到,比方校验码.码制等.假设你不去理解而是去记,就非常难參 ...

  10. NEFUOJ 500 二分法+最大流量

    http://acm.nefu.edu.cn/JudgeOnline/problemshow.php?problem_id=500 description 在这个信息化的时代.网购成为了最流行的购物方 ...