js 正则验证
Html 代码如下:
<table>
<tr>
<td>匹配正整数:</td>
<td><input type="text" name="" id="t1"></td>
<td><input type="button" name="" id="btn1" value="验证"></td>
</tr>
</table>
// RegExp对象: var pattern = new RegExp("模式字符串", "修饰符");
// 修饰符: i表示忽略大小写, g表示全局匹配
// 字面量: var pattern = /模式/修饰符;
// 元字符
// *: 任意个(有或没有都可以)
// +: 一次或多次
// ?: 零次或一次
// ^: 从开头匹配, 以某字符开头的意思
// .: 除\n以外的字符
// $: 从结尾匹配, 以某字符结束的意思
// |: 或
// (): 分组匹配
// []: 选择匹配
// {}: 匹配次数, 出现次数的匹配
// [0123456789]等价于[0-9]
// [0-9]等价于\d
// \D: 不包含[0-9]
// [abcdefg...xyz]等价于[a-z]
// {n}必须出现N次
// {a, b}最少出现a次, 最多出现b次
// {a,}最少出现a次, 最多不限
// {0,}最少不限, 最多不限
// 中文验证
function isChinese(str) {
var pattern = /^[\u4e00-\u9fa6]$/;
return pattern.test(str);
}
// 正整数验证
function isPositiveInteger(str) {
var pattern = /^\+?[1-9]\d*$/;
return pattern.test(str);
}
// 负整数验证
function isNegtiveInteger(str) {
var pattern = /^\-[1-9]\d*$/;
return pattern.test(str);
}
// 整数验证
function isInteger(str) {
var pattern = /^[+-]?[1-9]\d*$|^0$/g;
return pattern.test(str);
}
// 小数验证
function isDecimal(str) {
var pattern = /^[-+]?\d+\.\d*[1-9]$/g;
return pattern.test(str);
}
// 两位小数验证
function isTwoDecimal(str) {
var pattern = /^[-+]?\d\.\d[1-9]$|^[-+]?[1-9]\d+\.\d[1-9]$/g;
return pattern.test(str);
}
// 长度为6任意字符
function isArbitrarily(str) {
var pattern = /^.{6}$/g;
return pattern.test(str);
}
//大写字母,最少5位,最多10位
function isUppercase(str) {
var pattern = /^[A-Z]{5,10}$/g;
return pattern.test(str);
}
//小写字母,最少1位
function isLowercase(str) {
var pattern = /^[a-z]+$/g;
return pattern.test(str);
}
//字母数字,0不准开头,必须6位
function isLetter(str) {
var pattern = /^[a-zA-Z1-9][a-zA-Z0-9]{5}$/g;
return pattern.test(str);
}
//匹配_、{、[开头,后面可以没有字符
function isCharacter(str) {
var pattern = /^[_{[].*$/g;
return pattern.test(str);
}
//匹配邮政编码,共六位数字,第一位不能为0
function isPost(str) {
var pattern = /^[1-9]\d{5}$/g;
return pattern.test(str);
}
//匹配文件压缩包(XXXXX.zip|xxx.rar|xx.gz)
function isCompress(str) {
var pattern = /^\w+(\.zip|\.rar|\.gz)$/g;
return pattern.test(str);
}
//匹配电子邮箱
function isMailbox(str) {
var pattern = /^\w{6,12}@[a-zA-Z0-9]{1,10}(\.[a-z]{2,4}){1,2}$/g;
return pattern.test(str);
}
//匹配手机号
function isPhone(str) {
var pattern = /^1(39|30|31|58|85|75)\d{8}$/g;
return pattern.test(str);
}
//匹配固定电话号
function isTelephone(str) {
var pattern = /^\d{3,4}\-\d{7,8}(\-\d{1-4})?$/g;
return pattern.test(str);
}
//匹配身份证号
function isID(str) {
var pattern = /^\d{17}[xX0-9]$/;
return pattern.test(str);
}
//验证日期
function isDate(str) {
var pattern = /^(19\d{2}|2\d{3})([-/.])(0[1-9]|1[0-2])\2(0[1-9]|[1-2]\d|3[0-1])$/;
return pattern.test(str);
}
//匹配IP地址
//(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数 [1-9]?\d 1\d\d 199 249 255
function isIP(str) {
var pattern = /^((25[0-5]|2[0-4]\d|[1-9]?\d|1\d{2})\.){3}(25[0-5]|2[0-4]\d|[1-9]?\d|1\d{2})$/;
return pattern.test(str);
}
//匹配URL地址
//http(https)://主机名或IP地址(:端口)(/path)
//http(s)://(www.)域名.com(.cn) : 端口号(如8080,两到四位)/文件夹名/文件
function isUrl(str) {
var pattern = /^(http|https)\:\/\/(w{3}\.)?\w+(\.com|\.com\.cn)(\:\d{2,4})?(\/.+)*/;
return pattern.test(str);
}
//匹配HTML标签
function isHtml(str) {
var pattern = /^<([a-z]+)><\/\1>|<[a-z]+\/>$/;
return pattern.test(str);
} //功能实现
var btn = document.getElementById("btn");
btn.onclick = function(){
var content = document.getElementById("t1").value; var value = isPositiveInteger(content);
value ? alert("正确") : alert("错误")
}
js 正则验证的更多相关文章
- 手机号码js正则验证
手机号码js正则验证 var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; if (!myreg.test($(" ...
- js正则验证特殊字符
js正则验证特殊字符 方案一 var regEn = /[`~!@#$%^&*()_+<>?:"{},.\/;'[\]]/im, regCn = /[·!#¥(--):: ...
- 正则表达式控制Input输入内容 ,js正则验证方法大全
https://blog.csdn.net/xushichang/article/details/4041507 //输入姓名的正则校验 e.currentTarget.value = e.curre ...
- JS正则验证数字格式2
之前的博文:JS验证正数字,正则的一种正数规则1,中isNaN可以判断内容是否为数字,但是这种判断出来的数字,有的不是数字的标准格式.那篇博文中尝试了下用正则验证,但是忘了一种情况,小数点后无数字,小 ...
- js正则验证数字的方法
正则验证数字的方法: <script type="text/javascript"> function validate(){ var reg = new RegExp ...
- js正则验证
/判断输入内容是否为空 function IsNull(){ var str = document.getElementById('str').value.trim(); ...
- js正则验证之不能使用相同字符
在我们的前端开发中,为了不让用户输入相同的密码字符以提高其安全性,我们会写一个js方法来实现这个功能.接下来,我就来实现这个方法,有其他好的解决办法,敬请留言,博主必定向其学习. function _ ...
- js正则验证方法大全
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...
- JS正则验证格式
function test() { var temp = document.getElementById("text1"); //对电子邮件的验证 var myreg = /^([ ...
- js正则验证两位小数 验证数字最简单正则表达式大全
<h3>输入完按回车后即可验证!(自认为最简单!)</h3> 正整数: <input type="text" size="20&quo ...
随机推荐
- MVC,MVP 和 MVVM 的图示(转)
作者: 阮一峰 日期: 2015年2月 1日 转自:http://www.ruanyifeng.com/blog/2015/02/mvcmvp_mvvm.html 复杂的软件必须有清晰合理的架构,否则 ...
- 纠错帖:Zuul & Spring Cloud Gateway & Linkerd性能对比 (转载)
纠错帖:Zuul & Spring Cloud Gateway & Linkerd性能对比 Spring Cloud Spring Cloud Spring Cloud Gatew ...
- 浅谈JVM-图解类加载机制
一.目录 二.类加载机制流程 1.什么是类加载机制? JVM把class文件加载到内存里面,并对数据进行校验.准备.解析和初始化,最终能够被形成被JVM可以直接使用的Java类型的过程. 2.类加载流 ...
- Code Signal_练习题_adjacentElementsProduct
Given an array of integers, find the pair of adjacent elements that has the largest product and retu ...
- 使用镶嵌数据集 MosaicDataSet管理不同分辨率影像数据
镶嵌数据集 MosaicDataSet是Esri推出的一种用于管理海量影像数据的数据模型,它是Geodatabase数据模型的一个子集定义. 该数据模型强大之处在于它能统一管理不同采集时间.不同采集来 ...
- Windows win7下VMware Virtual Ethernet Adapter未识别网络解决方法
win7下VMware Virtual Ethernet Adapter未识别网络解决方法[摘] by:授客 QQ:1033553122 问题描述 win7系统下安装VMware,查看网卡适配器设置, ...
- 612.1.004 ALGS4 | Elementary Sorts - 基础排序算法
sublime编辑器写代码,命令行编译 减少对ide的依赖//可以提示缺少什么依赖import 所有示例代码动手敲一遍 Graham's Scan是经典的计算几何算法 shffule 与 map-re ...
- 线程间的通信方式2--管道流Pipes
“管道”是java.io包的一部分.它是Java的特性,而不是Android特有的.一条“管道”为两个线程建立一个单向的通道.生产者负责写数据,消费者负责读取数据. 下面是一个使用管道流进行通信的例子 ...
- 自己搭建云盘 – 简单的PHP网盘程序
自己搭建云盘 – 简单的PHP网盘程序 Veno File Manager 2.6.3 汉化版 相信大家都比较熟悉或使用过 Owncloud 网盘程序,Owncloud 虽强大,不过太过于臃肿,而 V ...
- git添加公钥后报错sign_and_send_pubkey: signing failed: agent refused operation
在服务器添加完公钥后报错 sign_and_send_pubkey: signing failed: agent refused operation 解决方案: eval "$(ssh-ag ...