正则表达式:
作用:通过一系列特殊的元字符。来对指定字符串的数据格式进行过滤检测。
注意:正则表达式不是起源于Java,仅仅是在Java语言中可以使用正则表达式。
注册用户信息:
姓名: 一般格式都为中文汉字 数量上的要求 2-4
性别: 男 | 女
年龄: 必须是数字(正整数) 数的范围 0-150
电话: 指定的数字(有规律的数字)
邮箱: @ . 373192599@qq.com
Java中定义正则表达式的标准格式:
String reg = "^$";
^ 正则匹配开始
$ 正则匹配结束
元字符:
\d 表示0-9中的任何一个数字
\D 表示非0-9中的任何一个字符
\w 表示0-9和a-z和A-Z和_ 中间的任何一个字符
\W 表示非(0-9和a-z和A-Z和_) 中间的任何一个字符
\s 空白字符(没有任何内容):[ \t\n\x0B\f\r]
\S 非空白字符:[^\s]
[\\u4e00-\\u9fa5] 表示汉字
或的关系
[a-z] 输入小写字母a-z
[a-c] 输入小写字母a-c
[0-9] 输入小写字母0-9
[0-2] 输入小写字母0-2
[0-9a-z] 输入小写字母0-9或a-z之间字符
[0-9a-zA-Z_%#@&] 可以输入的内容: 0-9a-zA-Z_%#@&
[0-24-5] 输入 0-2 4-5 之间的数
限制重复匹配的次数符号: n和m表示正整数和0
{n} 必须重复匹配n次 \d{2} 必须输入2个数字
{n,} 必须至少重复匹配n次,最多不限 \d{2} 必须至少输入2个数字,最多不限
{n,m} 必须至少重复匹配n次,最多m次 \d{2,4}必须至少输入2个数字,最多4个
? 一次或一次也没有 ? ==={0,1}
* 零次或多次 * ==={0,}
+ 一次或多次 + ==={1,}
注意:
在Java中\是转移符号,如果要在Java表示反斜线必须使用 \\ 或 / 表示。
常用的正则表达式:
1)用户名:user=/^(\w){10,20}$/; 注:(\w):表示a-zA-Z0-9任意一个;()表示一个整体 {n,m}匹配前一项至少n次,最多不超过m次
2)密码:pwd=/^[A-Za-z]{1}([A-Za-z0-9]|[._]){5,19}$/; 注:[….]表示里面的任意字符 {n}匹配前一项n次 |:表示或
3)手机号码:mobile=/^1[3|5|8][0-9]{9}$/;
4)身份证:card=/^(\d{15}|\d{17}[\d|X])$/;注:\d:0-9任意一个数
5)电子邮件:email=/^\w+([._]\w+)*@\w+[.]\w+$/; 注:+表示匹配前一项一次或多次{1,n} *匹配前一项0次或多次{0,n}
范围:* > + >{n}>{n,m}
6)呢称:汉字检测:[\u4e00-\u9fa5]{5,10} 若是汉字,则在5-10之间 中英文检测:/^([\u4e00-\u9fa5]{5,10}|[\w]{2,20})$/;
正则表达式检测方法:例:正则表达式对象.test(动态获取值); 若检测成功返回值为true