1.^[0-9]+(\.5)?$ 匹配0.5的倍数正整数
2.^[+-]?[0-9]+(\.5)?$ 匹配0.5的倍数正负整数
3.[0-9]\\d{0,10} 只能输入11位数字
4.[0-9]+$ 仅输入数字
5.//日期时间
[1-9]\\d{0,3}") 只能输入4位数字 年 2018
^(0?[1-9]|1[0-2])$") 月 范围: 1-12
^((0?[1-9])|((1|2)[0-9])|30|31)$"); 日 范围:1-31
^(23|[0-2][0-3])$") 时 范围:0-23
^(59|[0-5][0-9])$") 分秒 范围:0-59
//1.2.3333.444.5555.666.99999999999abc
[.][^.]+$ 匹配最后一个.后面的字符包含.
一、数字
1.数字 ^[0-9]*$
2.n位的数字 ^\d{n}$
3.至少n位的数字 ^\d{n,}$
4.m-n位的数字 ^\d{m,n}$
5.零和非零开头的数字 ^(0|[1-9][0-9]*)$
6.非零开头的最多带两位小数的数字 ^([1-9][0-9]*)+(\.[0-9]{1,2})?$
7.带1-2位小数的正数或负数 ^(\-)?\d+(\.\d{1,2})$
8.正数、负数、和小数 ^(\-|\+)?\d+(\.\d+)?$
9.有两位小数的正实数 ^[0-9]+(\.[0-9]{2})?$
10.非负整数 ^\d+$ 或 ^[1-9]\d*|0$
11.非正整数 ^-[1-9]\d*|0$
12.浮点数 ^(-?\d+)(\.\d+)?$
13.正浮点数 ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$
14.负浮点数 ^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$
二、字符
1.汉字 ^[\u4e00-\u9fa5]{0,}$
2.大写英文 ^[A-Z]+$
3.小写英文 ^[a-z]+$
4.英文和数字 ^[A-Za-z0-9]+$
5.英文、数字和下划线 ^\w+$
6.中文、英文、数字 ^[\u4E00-\u9FA5A-Za-z0-9]+$
7.中文、英文、数字和下划线 ^[\u4E00-\u9FA5A-Za-z0-9_]+$
8.双字节字符(包括汉字在内) [^\x00-\xff]
三、特殊需求表达式
1.Email ^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$
2.身份证号码 ^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$
3.手机号码 ^1(3|4|5|6|7|8|9)\d{9}$ 或者 ^\d+$|^\d+[-]?\d+$
{
pattern: /^\d+$|^\d+[-]?\d+$/,
message: '请输入正确联系电话'
}
1). 电话号码及座机: /((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)/
2). 移动、电信、联通号码校验: /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/
4.固定电话(XXX-XXXXXXX XXXX-XXXXXXXX) /^(0\d{2,3})-?(\d{7,8})$/
5.域名 ^((http:\/\/)|(https:\/\/))?([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}(\/)
6.IPv4 ((?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d))
7.html标签 <(\S*?)[^>]*>.*?|<.*? />
8.日期 ^\d{4}-\d{1,2}-\d{1,2}
9.密码(以字母开头,长度在6~18之间,只能包含字母、数字和下划线) ^[a-zA-Z]\w{5,17}$
10.密码(必须包含大小写字母和数字的组合,不能使用特殊字符,长度在 8-10 之间) ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])[a-zA-Z0-9]{8,10}$
11.密码(必须包含大小写字母和数字的组合,可以使用特殊字符,长度在8-10之间) ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$
12.电子邮箱: /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/
14.姓名: /^[\u4e00-\u9fa5]{2,4}$/ //2-4个中文字符正则
155、身份证号码
(1)普通校验:/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/
(2)精准校验
18位:/^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
15位:/^[1-9]\d{5}\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{2}[0-9Xx]$/
后6位:/^(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
js字符串操作函数
5-1、concat() 将两个以上的字符文本组合起来,返回一个新的字符串。
5-2、indexOf() 返回字符串中一个子串第一次出现的索引;没有匹配项,返回-1。
5-3、charAt() 返回指定的字符。
5-4、lastIndexOf() 返回字符串中最后一处出现的索引,没有匹配项,返回-1。
5-5、match() 检查一个字符串是否匹配一个正则表达式。
5-6、substr() 返回一个字符串的一个子串,从开始位置,以及截取字符串长度。
5-7、substring() 返回一个字符串的一个子串,输入开始位置、结束位置。
5-8、slice() 已有的数组中返回选定的元素。
5-9、replace() 用新的字符串代替匹配的字符串。
5-10、search() 执行一个正则表达式匹配查找,返回字符串中匹配的索引值,负责返回-1。
5-11、split() 通过字符串划分成子串,将一个字符串做成字符串数组。
5-12、tolowerCase() 将整个字符串转换成小写。
5-13、toUpperCase() 将整个字符串转换成大写。
5-14、join() 把数组的所有元素放入一个字符串,元素通过指定的分隔符进行分隔。
5-15、pop() 删除并返回数组的最后一个元素。
5-16、shift() 删除并返回数组的第一个元素。
5-17、push() 向数组末尾添加一个或更多的元素,并返回新的长度。
5-18、unshift() 向数组的开头添加一个或更多元素,并返回新的长度。
5-19、reverse() 颠倒数组中的元素顺序。
5-20、slice() 从某个已有的数组返回选定的元素。
5-21、sort() 对数组元素进行排序。
5-22、toString() 把数组转换为字符串,并返回结果。