验证数字:^[0-9]*$
验证n位的数字:^\d{n}$
验证至少n位数字:^\d{n,}$
验证m-n位的数字:^\d{m,n}$
验证零和非零开头的数字:^(0|[1-9][0-9]*)$
验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
验证非零的正整数:^\+?[1-9][0-9]*$
验证非零的负整数:^\-[1-9][0-9]*$
验证非负整数(正整数
+
0)
^\d+$
验证非正整数(负整数
+
0)
^((-\d+)|(0+))$
验证长度为3的字符:^.{3}$
验证由26个英文字母组成的字符串:^[A-Za-z]+$
验证由26个大写英文字母组成的字符串:^[A-Z]+$
验证由26个小写英文字母组成的字符串:^[a-z]+$
验证由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
验证由数字、26个英文字母或者下划线组成的字符串:^\w+$
验证用户密码:^[a-zA-Z]\w{5,17}$
正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线。
验证是否含有
^%&',=?$\"
等字符:[^%&',=?$\x22]+
验证汉字:^[\u4e00-\u9fa5],{0,}$
验证Email地址:^\w+[-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
验证InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$
;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
验证电话号码:^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$:--正确格式为:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。
验证身份证号(15位或18位数字):^\d{15}|\d{}18$
验证一年的12个月:^(0?[1-9]|1[0-2])$
正确格式为:“01”-“09”和“1”“12”
验证一个月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$
正确格式为:01、09和1、31。
整数:^-?\d+$
非负浮点数(正浮点数
+
0):^\d+(\.\d+)?$
正浮点数
^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正浮点数(负浮点数
+
0)
^((-\d+(\.\d+)?)|(0+(\.0+)?))$
负浮点数
^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
浮点数
^(-?\d+)(\.\d+)?$
以上所述是小编给大家介绍的JS正则表达式匹配检测各种数值类型(数字验证),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
正则表达式:/^1\d{10}$/
答案演示:
表达式意思解析:
(1)以1为开头;
(2)\d表示数字,\d{10}表示出现10次数字;
(3)$表示结尾,即匹配输入字符串的结尾位置;
(4)根据(1)、(2)、(3),正好表示11位数字
扩展资料:
更严格的电话号码校验正则表达式:
(1)/^1(3|4|5|7|8)\d{9}$/ ,这个表达式才是真正有效的电话号码的正则表达式,表示必须以1做开头,第二位可以是3,4,5,7,8,中的任意一位,后面9位数字可以是0-9任意数字。
身份证的校验正则表达式:
(1)(^\d{15}$)|(^\d{17}([0-9]|X)$),表示匹配15位或18位身份证,且可以匹配出以X结尾的身份证号码。
参考资料来源:百度百科-正则表达式
正则表达式,又叫规则表达式,英文名Regular Expression,本质是操作字符串
1、模式匹配 表单验证
2、文本检索 搜索
3、替换 过滤
简单,方便,性能高
var reg=new RegExp('规则','模式') 通过构造函数创造
var reg=/规则/模式 通过字面量创建
i 忽略大小写
g 全局
m 多行
注:不分前后顺序
str.match(正则) 返回数组 没有返回 null
str.search(正则) 返回下标 没有返回-1
str.replace(正则,替换成谁) 返回替换后的字符串
str.replace(正则,function(s){
s 符合正则条件的字符串
})
\d 数字 /[0-9]/
\s 空格
\w /[0-9a-zA-Z_]/ 单词
\D 非数字 /[^0-9]/
\S 非空白
\W 非单词 /[^0-9a-zA-Z_]/
.(点) 代表任意
\. 代表.
\\ 代表\
\\\\ 代表\\
\/ 代表/
只要有特殊意义的都要转译
+ {1,m} 若干个 最少1个最多不限
? {0,1} 可有可无
* {0,m} 可以没有,多了不限
{n} 正好n个
{n,m} 最少n个 最多m个
{n,} 最少n个,最多不限
{,m} × 没有这种写法
^ 行首
注:如果^单独使用,代表字符串行首,配合m使用会识别段落
$ 行尾
[] 中括号
1、[]里面的东西都是或的形式
2、[]里面和放范围
3、[^] 不代表行首,代表除去里面的范围
4、其他特殊符号代表本身
1、test() 一般配合^ &
功能:用于检测是否于正则匹配。
返回:布尔值,true匹配,false不匹配
语法:reg.test(检测的内容)
2 exec()
功能:用于检测是否于正则匹配。
返回:数组, 不匹配返回null
语法:reg.test(检测的内容)
再做验证之前:验证分两种,一种强校验,一种弱校验
(1)验证手机号 /1[23457]\d{9}/
(2)验证座机号 区号-座机号 /(0[1-9]\d-)?[1-9]\d{7}/
(3)验证qq /[1-9]\d{4,11}/
(4)实现一个trim函数 去掉收尾空格 /^\s+|\s+$/g
(5)中文 /[\u4e00-\u9fa5]/
(6)验证年龄 18-100 /^1[89]|[2-9]\d|100$/
(7)邮箱: asdsad@163.com /^\w{5,12}@[a-z0-9]{2,8}\.com$/
(8) 过滤html /<[^>]+>/g
1、分组 ab+ abbbb (ab)+
2、匹配子级
配合replace使用 str.replace(reg,function(s,a,b){
s是 整体
a是第一个括号的项
b是第二个括号的项
})
3、优选级 ^(1[89]|[2-9]\d|100)$
4、重复的子项
abbb /(a)(b)\2+/
今天先给大家总结到这儿,后续还会有补充