1.非负整数:

(^[1-9]+[0-9]*$)|(^[0]{1}$) 或 (^[1-9]+[0-9]*$)|0

2.非正整数:

(^-[1-9]+[0-9]*$)|(^[0]{1}$) 或 (^-[1-9]+[0-9]*$)|0

3.非负浮点数:

//前边是整数部分1-9开头的小数,后边是整数部分0开头的小数和0.00*。

(^[1-9]+[0-9]*\.{1}[0-9]+$)|(^[0]{1}\.{1}[0-9]+$)

4.非正浮点数:

(^-[1-9]+[0-9]*\.{1}[0-9]+$)|(^-[0]{1}\.{1}[0-9]*[1-9]+[0-9]*$)|(^0\.0+$)

5.匹配中文字符:

^[\u4e00-\u9fa5]{2,4}$ (2-4个汉字可以校验中文姓名)

注意:正则表达式在Java中声明在String字符串中,其中出现的反斜杠在Java中需要用转义字符转义,即再加一个反斜杠。在使用"|"逻辑或的时候注意"|"两边不要带空格,直接跟随正则表达式。

校验正则代码:

String dataStr = "XXXXX";

String regFormat = "^XXXXX$";

boolean isMatch = Pattern.matches(regFormat , dataStr);

//结果为true,表示匹配;false,表示不匹配。

最后推荐一位大神的博客:正则基础

https://www.cnblogs.com/goodboy-heyang/p/4673628.html

(如有错误欢迎留言指正,欢迎留言交流!)

内容如下:

1、字母:匹配单个字母

(1)A:表示匹配字母A;

(2)\\:匹配转义字符“\”;

(3)\t:匹配转义字符“\t”;

(4)\n:匹配转义字符“\n”;

2、一组字符:任意匹配里面的一个单个字符:

(1)[abc]:表示可能是字母a,可能是字母b或者是字母c;

(2)[^abc]:表示不是字母a,字母b,字母c的任意一个;

(3)[a-zA-Z]:表示全部字母中的任意一个;

(4)[0-9]:表示全部数字的任意一个;

3、边界匹配:在以后编写JavaScript的时候使用正则中要使用到:

(1)^:表示一组正则的开始;

(2)$:表示一组正则的结束;

4、简写表达式:每一位出现的简写标记也只表示一位:

(1)· :表示任意的一位字符;

(2)\d :表示任意的一位数字,等价于“[0-9]”;

(3)\D :表示任意的一位非数字,等价于“[~0-9]”;

(4)\w :表示任意的一位字母、数字、_,等价于“[a-zA-Z0-9_]”;

(5)\w :表示任意的一位非字母、数字、_,等价于“[^a-zA-Z0-9_]”;

(6)\s :表示任意的一位空格,例如:\n、\t等;

(7)\S :表示任意的一位非空格;

5、数量表示:之前所有的正则都只是表示一位,如果要表示多位,则就需要数量表示。

(1)正则表达式?:此正则出现0次或1次;

(2)正则表达式*:此正则出现0次、1次或多次;

(3)正则表达式+:次正则出现1次或多次;

(4)正则表达式{n}:此正则出现正好n次;

(5)正则表达式{n,}:此正则出现n次以上;

(6)正则表达式{n,m}:此正则出现n – m次。

6、逻辑表示:与、或、非

(1)正则表达式A正则表达式B: 表达式A之后紧跟着表达式B;

(2)正则表达式|A正则表达式B: 表示表达式A或者表达式B,二者任选一个出现;

(3)(正则表达式):将多个子表达式合成一个表示,作为一组出现。

Java常用的正则校验的更多相关文章

  1. 常用Java字段的正则校验

    正则表达式: 单个字符的匹配规则如下: 多个字符的匹配规则如下: 复杂匹配规则主要有: 常用正则表达式校验规则: 一.校验数字的表达式 1.数字:^[0-9]*$ 2.n位的数字:^\d{n}$ 3. ...

  2. RegExp正则校验之Java及R测试

    前言: 正则表达式(英语:Regular Expression)原属于计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.在很多文本编辑器里边,正则表达式通常被用 ...

  3. Java 常用正则表达式,Java正则表达式,Java身份证校验,最新手机号码正则表达式

    Java 常用正则表达式,Java正则表达式,Java身份证校验,最新手机号码校验正则表达式 ============================== ©Copyright 蕃薯耀 2017年11 ...

  4. js前台传数组,java后台接收转list,前后台用正则校验

    前台,传参数时,将数组对象转换成json串,后台java收到后用 JSONArray.fromObject 转成集合. 前台js:var params = {"FileNameList&qu ...

  5. java常用类与包装类--常用类正则表达式 String正则方法+Matcher+Pattern

    0.java中的正则 java 中的正则总共涉及三个类(或者说1个String类和一个regex包) java.lang.String java.util. Matcher java.util.Pat ...

  6. Java基础 —— Java常用类

    Java常用类: java.lang包: java.lang.Object类: hashcode()方法:返回一段整型的哈希码,代表地址. toString()方法:返回父类名+"@&quo ...

  7. 正则校验:微信号,qq号,邮箱

    java判断微信号.手机.名字的正则表达 - willgos - 博客园https://www.cnblogs.com/solossl/p/5813106.html 微信号正则校验,qq正则,邮箱正则 ...

  8. JAVA(三)JAVA常用类库/JAVA IO

    成鹏致远 | lcw.cnblog.com |2014-02-01 JAVA常用类库 1.StringBuffer StringBuffer是使用缓冲区的,本身也是操作字符串的,但是与String类不 ...

  9. 校验总结:校验是否是中英文等等(1.正则校验 2.hibernate volidator)

    1.正则校验 import java.util.regex.Matcher;import java.util.regex.Pattern; public class Validation { //-- ...

随机推荐

  1. lua继承

    lua中其实是没有类的,有的只是表(table) lua查找一个表元素时的规则,其实就是如下3个步骤: 1.在表中查找,如果找到,返回该元素,找不到则往下看: 2.判断该表是否有元表,如果没有元表,返 ...

  2. vue+axios+easy-mock+element-ui实现表格分页功能

    废话不多,效果如图: LineSource.vue文件内代码如下: <template> <div class="c-main auth userControl" ...

  3. webstorm 配置Vue.js 语法提示

    标签属性 v-text v-html v-once v-if v-show v-else v-for v-on v-bind v-model v-ref v-el v-pre v-cloak v-on ...

  4. Android 自定义Dialog中加EditText弹不出键盘跟Dialog遮挡键盘的问题

    先上两张图 第一张问题很明显,第二张是成功的图, 其实第一张是加了 //getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INP ...

  5. django模板templates详解(二)

    1 总体结构 ​ Django是MTV结构,即:Model, Template, View Model:定义数据的存储格式,并且提供了数据库访问的API. View:定义那些数据被显示,是业务逻辑处理 ...

  6. c#利用三层架构做一个简单的登录窗体

    就个人而言,三层架构有点难理解,不知道该如何下手,各层与各层之间怎么调用 最近一直在研究三层架构,经过网上学习与多方打听写一下自己的心得.有不足之处,可以评论和私聊探讨 言归正传: 三层架构(3-ti ...

  7. May 26th 2017 Week 21st Friday

    One thorn of experience is worth a whole wilderness of warning. 一次痛彻心扉的经历,抵得上千百次的告诫. Several days ag ...

  8. IOS开发之——画图(CGContext)

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/zhenyu5211314/article/details/24230581 0  CGContext ...

  9. 【[CTSC2000]冰原探险】

    noip前练一下码力还是非常有前途的 这道题本来就是想写个大暴力弃疗的,所以直接强上暴力浑身舒爽 结果发现要不是判重的时候脑残了,就能\(A\)了 没什么好说的呀,就是每一次都暴力\(O(n)\)往上 ...

  10. 【转】CommonJS,AMD,CMD区别

    学得比较晕,再次看commonjs,amd, cmd时好像还是没完全弄清楚,今天再整理一下: commonjs是用在服务器端的,同步的,如nodejs amd, cmd是用在浏览器端的,异步的,如re ...