JS正则表达式大全
js 整数 正则表达式
js 整数正则表达式JavaScript中使用正则表达式来匹配整数非常常见。
正则表达式是一种用于描述字符串模式的语法,可以用来进行字符串匹配、替换和提取等操作。
在JavaScript中,可以使用正则表达式字面量或RegExp对象来创建正则表达式。
要匹配整数,可以使用以下正则表达式:```javascript/^-?\d+$/```其中,`^`表示字符串的开始,`-?`表示可选的负号,`\d+`表示一个或多个数字,`$`表示字符串的结束。
这个正则表达式可以匹配不带任何符号的正整数,也可以匹配带有负号的整数。
下面是一些示例:```javascriptconsole.log(/^-?\d+$/.test("123")); // trueconsole.log(/^-?\d+$/.test("-456")); // trueconsole.log(/^-?\d+$/.test("7.8")); // falseconsole.log(/^-?\d+$/.test("abc")); // false```第一个示例中的字符串"123"是一个正整数,所以返回true。
第二个示例中的字符串"-456"是一个负整数,所以也返回true。
第三个示例中的字符串"7.8"包含小数点,所以不是一个整数,返回false。
第四个示例中的字符串"abc"不包含任何数字,所以也不是一个整数,返回false。
除了使用`test`方法来检测字符串是否匹配整数正则表达式,还可以使用`match`方法来提取匹配的整数。
`match`方法返回一个数组,包含所有匹配的子字符串。
例如:```javascriptconsole.log("123abc456".match(/-?\d+/g)); // ["123", "456"] console.log("-789 0123".match(/-?\d+/g)); // ["-789", "0123"]```第一个示例中的字符串"123abc456"包含两个整数"123"和"456",所以返回一个包含这两个整数的数组。
js坐标正则表达式
js坐标正则表达式
如果你想在JavaScript中匹配坐标格式(例如:纬度经度坐标),你可以使用正则表达式。
一个简单的例子可能如下所示:
```javascript
const regex = /^(-?\d{1,2}\.\d{1,5})\,(-?\d{1,3}\.\d{1,5})$/;
```
这个正则表达式匹配如下的格式:
`纬度`:范围从-90到90,精度为小数点后5位。
`经度`:范围从-180到180,精度为小数点后5位。
注意,这个正则表达式没有考虑到一些特殊情况,例如:
超过范围的坐标(例如,纬度超过90或低于-90,经度超过180或低于-180)。
无效的格式(例如,纬度和经度之间没有逗号,或者没有数字)。
如果需要处理这些特殊情况,你可能需要使用更复杂的正则表达式或者额外的逻辑来验证输入的坐标。
js常用正则表达式语法大全
js常用正则表达式语法大全正则表达式是一种强大而灵活的文本匹配工具,在JavaScript中广泛应用于字符串操作、表单验证、搜索和替换等场景。
掌握正则表达式的语法对于JavaScript开发者来说是至关重要的。
本文将介绍JavaScript中常用的正则表达式语法。
1. 基本语法1.1 字面量表示法var regex =/pattern/;1.2 构造函数表示法var regex =new RegExp("pattern");2. 元字符元字符是正则表达式中具有特殊含义的字符。
2.1 普通字符普通字符匹配其字面值,例如:var regex =/abc/;2.2 元字符•.:匹配任意字符(除了换行符)。
•^:匹配字符串的开始。
•$:匹配字符串的结束。
•*:匹配前一个字符0次或多次。
•+:匹配前一个字符1次或多次。
•?:匹配前一个字符0次或1次。
•|:或,匹配两个任一之一。
•( ):分组,将括号内的内容视为一个整体。
3. 字符类字符类用于匹配一个字符的集合。
•[abc]:匹配字符a、b或c中的任意一个。
•[^abc]:匹配除了a、b、c之外的任意字符。
•[a-z]:匹配任意小写字母。
•[A-Z]:匹配任意大写字母。
•[0-9]:匹配任意数字。
4. 预定义字符类预定义字符类是一些常用的字符类的缩写。
•\d:匹配任意数字,相当于[0-9]。
•\D:匹配任意非数字字符,相当于[^0-9]。
•\w:匹配任意单词字符(字母、数字、下划线),相当于[a-zA-Z0-9_]。
•\W:匹配任意非单词字符,相当于[^a-zA-Z0-9_]。
•\s:匹配任意空白字符(空格、制表符、换行符等)。
•\S:匹配任意非空白字符。
5. 量词量词用于指定匹配的次数。
•*:匹配前一个字符0次或多次。
•+:匹配前一个字符1次或多次。
•?:匹配前一个字符0次或1次。
•{n}:匹配前一个字符n次。
•{n,}:匹配前一个字符至少n次。
js正则表达式
用正则表达式限制只能输入中文:onkeyup=”value=”/blog/value.replace(/["^u4E00-u9FA5]/g,”) ” onbeforepaste=”clipboardData.setData(’text’,clipboardData.getData(’text’).replace(/[^u4E00-u9FA5]/g,”))”
正则如下:/\d+$/g统一空格个数
来源:正则匹配空格的问题
字符串内字符键有空格,但是空格的数量可能不一致,通过正则将空格的个数统一变为一个。
例如:蓝 色 理 想
变成:蓝 色 理 想
aobert的正则:
<script type="text/javascript"> var str="蓝 色 理 想" var reg=/\s+/g str = str.replace(reg," ") document.write(str) </script>判断字符串是不是由数字组成
来源:想问一下关于电话号码的正则判断
:求一个验证电话号码的JS正则
/^\d{3,4}-\d{7,8}(-\d{3,4})?$/区号必填为3-4位的数字,区号之后用“-”与电话号码连接
^\d{3,4}-电话号码为7-8位的数字
\d{7,8}分机号码为3-4位的数字,非必填,但若填写则以“-”与电话号码相连接
匹配首尾空白字符的正则表达式:^s*|s*$
评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式
JS的常用正则表达式验证密码(转载自用)
JS的常⽤正则表达式验证密码(转载⾃⽤) 1 JS的正则表达式23强:字母+数字+特殊字符 4 ^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)(?![a-zA-z\d]+$)(?![a-zA-z!@#$%^&*]+$)(?![\d!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$5 6 7中:字母+数字,字母+特殊字符,数字+特殊字符8 ^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$910弱:纯数字,纯字母,纯特殊字符11 ^(?:\d+|[a-zA-Z]+|[!@#$%^&*]+)$121314//校验是否全由数字组成1516function isDigit(s)17 {18var patrn=/^[0-9]{1,20}$/;19if (!patrn.exec(s)) return false20return true21 }2223//校验登录名:只能输⼊5-20个以字母开头、可带数字、“_”、“.”的字串24function isRegisterUserName(s)25 {26var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;27if (!patrn.exec(s)) return false28return true29 }3031function isRegisterUserName(s)32 {33var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;34if (!patrn.exec(s)) return false35return true36 }373839//校验⽤户姓名:只能输⼊1-30个以字母开头的字串40 Javascript代码41function isTrueName(s)42 {43var patrn=/^[a-zA-Z]{1,30}$/;44if (!patrn.exec(s)) return false45return true46 }47 }}4849//校验密码:只能输⼊6-20个字母、数字、下划线50function isPasswd(s)51 {52var patrn=/^(\w){6,20}$/;53if (!patrn.exec(s)) return false54return true55 }5657//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”58function isTel(s)59 {60//var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/;61var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;62if (!patrn.exec(s)) return false63return true64 }6566//校验⼿机号码:必须以数字开头,除数字外,可含有“-”67function isMobil(s)68 {69var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;70if (!patrn.exec(s)) return false71return true72 }7374//校验邮政编码75function isPostalCode(s)76 {77//var patrn=/^[a-zA-Z0-9]{3,12}$/;78var patrn=/^[a-zA-Z0-9 ]{3,12}$/;79if (!patrn.exec(s)) return false80return true81 }8283//校验搜索关键字84function isSearch(s)85 {86var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;'\,.<>/?]{1}[^`~!@$%^&()+=|\\\]87 [\]\{\}:;'\,.<>?]{0,19}$/;88 if (!patrn.exec(s)) return false89 return true90 }9192 function isIP(s) //by zergling93 {94 var patrn=/^[0-9.]{1,20}$/;95 if (!patrn.exec(s)) return false96 return true97 }9899正则表达式100 ^\\d+$ //⾮负整数(正整数 + 0)101 ^[0-9]*[1-9][0-9]*$ //正整数102 ^((-\\d+)|(0+))$ //⾮正整数(负整数 + 0)103 ^-[0-9]*[1-9][0-9]*$ //负整数104 ^-?\\d+$ //整数105 ^\\d+( //⾮负浮点数(正浮点数 + 0)106 ^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$ 107 //正浮点数108 ^((-\\d+( //⾮正浮点数(负浮点数 + 0)109 ^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$110 //负浮点数111 ^(-?\\d+)( //浮点数112 ^[A-Za-z]+$ //由26个英⽂字母组成的字符串113 ^[A-Z]+$ //由26个英⽂字母的⼤写组成的字符串114 ^[a-z]+$ //由26个英⽂字母的⼩写组成的字符串115 ^[A-Za-z0-9]+$ //由数字和26个英⽂字母组成的字符串116 ^\\w+$ //由数字、26个英⽂字母或者下划线组成的字符串117 ^[\\w-]+( //email地址118 ^[a-zA-z]+://( //url119 ^[A-Za-z0-9_]*$120121匹配完整域名的正则表达式:122 [a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?JS的正则表达式强:字母+数字+特殊字符 ^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)(?![a-zA-z\d]+$)(?![a-zA-z!@#$%^&*]+$)(?![\d!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$ 中:字母+数字,字母+特殊字符,数字+特殊字符 ^(?![a-zA-z]+$)(?!\d+$)(?![!@#$%^&*]+$)[a-zA-Z\d!@#$%^&*]+$弱:纯数字,纯字母,纯特殊字符^(?:\d+|[a-zA-Z]+|[!@#$%^&*]+)$//校验是否全由数字组成function isDigit(s){var patrn=/^[0-9]{1,20}$/;if (!patrn.exec(s)) return false return true}//校验登录名:只能输⼊5-20个以字母开头、可带数字、“_”、“.”的字串function isRegisterUserName(s){var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;if (!patrn.exec(s)) return false return true}function isRegisterUserName(s){var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;if (!patrn.exec(s)) return false return true}//校验⽤户姓名:只能输⼊1-30个以字母开头的字串Javascript代码function isTrueName(s){var patrn=/^[a-zA-Z]{1,30}$/;if (!patrn.exec(s)) return false return true}}}//校验密码:只能输⼊6-20个字母、数字、下划线function isPasswd(s){var patrn=/^(\w){6,20}$/;if (!patrn.exec(s)) return false return true}//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-” function isTel(s){//var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/; var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; if (!patrn.exec(s)) return false return true}//校验⼿机号码:必须以数字开头,除数字外,可含有“-” function isMobil(s){var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;if (!patrn.exec(s)) return false return true}//校验邮政编码function isPostalCode(s){//var patrn=/^[a-zA-Z0-9]{3,12}$/; var patrn=/^[a-zA-Z0-9 ]{3,12}$/;if (!patrn.exec(s)) return false return true}//校验搜索关键字function isSearch(s){var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;'\,.<>/?]{1}[^`~!@$%^&()+=|\\\][\]\{\}:;'\,.<>?]{0,19}$/;if (!patrn.exec(s)) return false return true}function isIP(s) //by zergling{var patrn=/^[0-9.]{1,20}$/;if (!patrn.exec(s)) return false return true}正则表达式^\\d+$ //⾮负整数(正整数 + 0)^[0-9]*[1-9][0-9]*$ //正整数^((-\\d+)|(0+))$ //⾮正整数(负整数 + 0)^-[0-9]*[1-9][0-9]*$ //负整数^-?\\d+$ //整数^\\d+( //⾮负浮点数(正浮点数 + 0)^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$ //正浮点数^((-\\d+( //⾮正浮点数(负浮点数 + 0)^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$//负浮点数^(-?\\d+)( //浮点数^[A-Za-z]+$ //由26个英⽂字母组成的字符串^[A-Z]+$ //由26个英⽂字母的⼤写组成的字符串^[a-z]+$ //由26个英⽂字母的⼩写组成的字符串^[A-Za-z0-9]+$ //由数字和26个英⽂字母组成的字符串^\\w+$ //由数字、26个英⽂字母或者下划线组成的字符串^[\\w-]+( //email地址^[a-zA-z]+://( //url^[A-Za-z0-9_]*$匹配完整域名的正则表达式:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+\.?。
JS正则表达式语法大全(非常详细)
JS正则表达式语法⼤全(⾮常详细)正则表达式是⼀种通⽤的⼯具,在 Script、、Java、、等⼏乎所有的编程语⾔中都能使⽤;但是,不同编程语⾔对正则表达式语法的⽀持不尽相同,有的编程语⾔⽀持所有的语法,有的仅⽀持⼀个⼦集。
本节讲到的正则表达式语法适⽤于 JavaScript。
正则表达式的语法体现在字符模式上。
字符模式是⼀组特殊格式的字符串,它由⼀系列特殊字符和普通字符构成,其中每个特殊字符都包含⼀定的语义和功能。
描述字符根据正则表达式语法规则,⼤部分字符仅能够描述⾃⾝,这些字符被称为普通字符,如所有的字母、数字等。
元字符就是拥有特动功能的特殊字符,⼤部分需要加反斜杠进⾏标识,以便于普通字符进⾏区别,⽽少数元字符,需要加反斜杠,以便转译为普通字符使⽤。
JavaScript 正则表达式⽀持的元字符如表所⽰。
元字符元字符描述.查找单个字符,除了换⾏和⾏结束符\w查找单词字符\W查找⾮单词字符\d查找数字\D查找⾮数字字符\s查找空⽩字符\S查找⾮空⽩字符\b匹配单词边界\B匹配⾮单词边界\0查找 NUL字符\n查找换⾏符\f查找换页符\r查找回车符\t查找制表符\v查找垂直制表符\xxx查找以⼋进制数 xxxx 规定的字符\xdd查找以⼗六进制数 dd 规定的字符\uxxxx查找以⼗六进制 xxxx规定的 Unicode 字符表⽰字符的⽅法有多种,除了可以直接使⽤字符本⾝外,还可以使⽤ ASCII 编码或者 Unicode 编码来表⽰。
⽰例1下⾯使⽤ ASCII 编码定义正则表达式直接量。
1. var r = /\x61/;2. var s = "JavaScript";3. var a = s.match(s);由于字母 a 的 ASCII 编码为 97,被转换为⼗六进制数值后为 61,因此如果要匹配字符 a,就应该在前⾯添加“\x”前缀,以提⽰它为 ASCII 编码。
⽰例2除了⼗六进制外,还可以直接使⽤⼋进制数值表⽰字符。
JS常用正则表达式及验证时间的正则表达式
JS常⽤正则表达式及验证时间的正则表达式转:/article/98069.htm1949-2100var reg=/^([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})$/;if(!reg.test(year) ){alert("请输⼊符合规范的年份!");return false;}1.在input框中只能输⼊⾦额,其实就是只能输⼊最多有两位⼩数的数字 //第⼀种在input输⼊框限制<input type="text" maxlength="8" class="form-control" id="amount" style="margin-right: 2px;" value="" onChange="count();" onkeyup="if (this.value==this.value2) return; if (this.value.search(/^\d*(?:\.\d{0,2})?$/)==-1) this.value=(this.value2)?this.value2:'';elsethis.value2=this.value;">元//第⼆种对于表单动态增加的⽅式,只能在js⽅法中验证。
var amount=$("#amount").val();if (amount.search(/^\d*(?:\.\d{0,2})?$/)==-1) {alert("⾦额格式不对,最多有两位⼩数");return false;}2.验证邮箱格式var reg=/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/;var email=$("#email").val();if(!reg.test(email) ){alert("请输⼊符合规范的邮箱账号!");return false;}3.密码采⽤数字、字母、特殊字符且长度为8-20位function validatePwd(str) {if (/^.*?[\d]+.*$/.test(str) && /^.*?[A-Za-z]/.test(str)&& /^.*?[~/`!@#$%^&*()_+|{}?;:><\-\]\\[\/].*$/.test(str) && /^.{8,20}$/.test(str)) {return true;}return false;}4.验证电话号码/*** 验证电话号码* @param phoneValue 要验证的电话号码* @returns 匹配返回true 不匹配返回false*/function validatePhone(phoneValue) {phoneValue = valueTrim(phoneValue);var reg = /^[1][0-9]{10}$/;return reg.test(phoneValue);}5.判断是否是汉字/*** 判断是否是汉字** @param charValue* 要验证的数据* @returns 匹配返回true 不匹配返回false*/function isCharacter(charValue) {var reg = /^[\u4e00-\u9fa5]{0,}$/;return reg.test(charValue);}6.是否为字母:true:是,false:不是function isChar(charValue){var charPattern=/^[a-zA-Z]*$/; //是否为字母result=charPattern.test(charValue);return result;}7.判断是否为数字function isNum(numValue){var numPattern=/^\d*$/; //数字的正则表达式result=numPattern.test(numValue);return result;}8.整数的正则表达式function isInt(intValue){var intPattern=/^0$|^[1-9]\d*$/; //整数的正则表达式result=intPattern.test(intValue);return result;}9.是否为字母和数字function isCharNum(flagValue){var flagPattern=/^[a-zA-Z0-9]*$/; //是否为字母和数字result=flagPattern.test(flagValue);return result;}10.检验18位⾝份证号码/*** 检验18位⾝份证号码(15位号码可以只检测⽣⽇是否正确即可,⾃⾏解决)** @param idCardValue* 18位⾝份证号* @returns 匹配返回true 不匹配返回false*/function idCardVildate(cid) {var arrExp = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ];// 加权因⼦var arrValid = [ 1, 0, "X", 9, 8, 7, 6, 5, 4, 3, 2 ];// 校验码var reg = /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/; if (reg.test(cid)) {var sum = 0, idx;for (var i = 0; i < cid.length - 1; i++) {// 对前17位数字与权值乘积求和sum += parseInt(cid.substr(i, 1), 10) * arrExp[i];}// 计算模(固定算法)idx = sum % 11;// 检验第18为是否与校验码相等return arrValid[idx] == cid.substr(17, 1).toUpperCase();} else {return false;}}11.验证15位数⾝份证号码中的⽣⽇是否是有效⽣⽇function isValidityBrithBy15IdCard(idCard15) {var year = idCard15.substring(6, 8);var month = idCard15.substring(8, 10);var day = idCard15.substring(10, 12);var temp_date = new Date(year, parseFloat(month) - 1, parseFloat(day));// 对于⽼⾝份证中的你年龄则不需考虑千年⾍问题⽽使⽤getYear()⽅法if (temp_date.getYear() != parseFloat(year)|| temp_date.getMonth() != parseFloat(month) - 1|| temp_date.getDate() != parseFloat(day)) {return false;} else {return true;}}12.验证18位数⾝份证号码中的⽣⽇是否是有效⽣⽇function isValidityBrithBy18IdCard(idCard18) {var year = idCard18.substring(6, 10);var month = idCard18.substring(10, 12);var day = idCard18.substring(12, 14);var temp_date = new Date(year, parseFloat(month) - 1, parseFloat(day));// 这⾥⽤getFullYear()获取年份,避免千年⾍问题if (temp_date.getFullYear() != parseFloat(year)|| temp_date.getMonth() != parseFloat(month) - 1|| temp_date.getDate() != parseFloat(day)) {return false;} else {return true;}}PS:js验证时间正则表达式验证时间格式为:2012-01-31 09:00:22var reDateTime = /^(?:19|20)[0-9][0-9]-(?:(?:0[1-9])|(?:1[0-2]))-(?:(?:[0-2][1-9])|(?:[1-3][0-1])) (?:(?:[0-2][0-3])|(?:[0-1][0-9])):[0-5][0-9]:[0-5][0-9]$/; var isDateTime = reDateTime.test('2012-01-31 09:00:22');。
JS常用正则表达式总结【经典】
JS常⽤正则表达式总结【经典】本⽂实例讲述了JS常⽤正则表达式。
分享给⼤家供⼤家参考,具体如下:在项⽬中个⼈写的⼀个常⽤验证的正则表达式:(仅供参考)//定义两个全局变量var reg;var errorInfo;//输⼊的数字类型必须是int型,正负整数都可以function validate_integer(text,value){reg=/^[-\+]?\d+$/;errorInfo=text+" "+value+" 只能是整数,请核实重新输⼊!";verifyByReg(value,reg,errorInfo);}//输⼊的数字类型必须是double型,保留的⼩数位数只能是2位,可以为正负function validate_double(text,value){reg=/^[-\+]?([1-9](\d+)?|0)(\.\d{2})$/;errorInfo=text+" "+value+" 只能保留2为⼩数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//输⼊的必须是全是数字类型型,不能出现其他字符function validate_number(text,value){reg=/^\d+$/;errorInfo=text+" "+value+" 只能是数字,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证输⼊n位的数值类型function validate_number_n(text,value,n){reg=eval("/^\\d{"+n+"}$/");errorInfo=text+" "+value+" 只能是"+n+"位数字,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证有两位⼩数的正实数function validate_decimal_two(text,value){reg=/^([1-9](\d+)?|0)(.[0-9]{2})?$/;errorInfo=text+" "+value+" 只能是保留2位⼩数的正数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证⾮零的正整数function validate_number_positive(text,value){reg=/^\+?[1-9][0-9]*$/;errorInfo=text+" "+value+" 只能是⾮0的正整数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证⾮零的负整数function validate_number_negative(text,value){reg=/^[-][1-9][0-9]*$/;errorInfo=text+" "+value+" 只能是⾮0的负整数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证⾮负整数,可以为0function validate_positive_haszero(text,value){reg=/^[1-9](\d+)?|0$/;errorInfo=text+" "+value+" 只能是是0或正整数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证⾮正整数,可以为0function validate_negative_haszero(text,value){reg=/^\-[1-9](\d+)?|0$/;errorInfo=text+" "+value+" 只能是是0或负整数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证⾮负浮点数(正浮点数 + 0)function validate_float_notnegative(text,value){reg=/^([1-9](\d+)?|0)(\.\d+)|0$/;errorInfo=text+" "+value+" 只能是是0或正浮点数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证正浮点数function validate_float_positive(text,value){reg=/^([1-9](\d+)?|0)(\.\d+)$/;errorInfo=text+" "+value+" 只能是正浮点数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//⾮正浮点数(负浮点数 + 0)function validate_float_notpositive(text,value){reg=/^\-([1-9](\d+)?|0)(\.\d+)|0$/;errorInfo=text+" "+value+" 只能是是0或者负浮点数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证负浮点数function validate_float_negative(text,value){reg=/^\-([1-9](\d+)?|0)(\.\d+)$/;errorInfo=text+" "+value+" 只能是负浮点数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证正浮点数多少位⼩数function validate_float_posbit(text,value,n){reg=eval("/^(\\d+)(\\.\\d{"+n+"})$/");errorInfo=text+" "+value+" 只能是"+n+"位正浮点数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//验证负浮点数多少位⼩数function validate_float_negbit(text,value,n){reg=eval("/^(-?\\d+)(\\.\\d{"+n+"})$/");errorInfo=text+" "+value+" 只能是"+n+"位负浮点数,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//校验⽂本是否为空function checknull(text,value){if(value=="" || typeof(value)=='undefined'){errorInfo=text+" "+value+" 不能为空,请重新输⼊!";returnInfo(errorInfo);}}//验证由26个英⽂字母组成的字符串function validate_string_letter(text,value){reg=/^[A-Za-z]+$/;errorInfo=text+" "+value+" 只能是26位不区分⼤⼩写的英⽂字母组成,请核实重新输⼊"; verifyByReg(value,reg,errorInfo);}//验证由26个英⽂字母的⼤写组成的字符串function validate_string_bigletter(text,value){reg=/^[A-Z]+$/;errorInfo=text+" "+value+" 只能是26位⼤写的英⽂字母组成,请核实重新输⼊"; verifyByReg(value,reg,errorInfo);}//验证由26个英⽂字母的⼩写组成的字符串function validate_string_smallletter(text,value){reg=/^[a-z]+$/;errorInfo=text+" "+value+" 只能是26位⼩写的英⽂字母组成,请核实重新输⼊"; verifyByReg(value,reg,errorInfo);}//验证由数字和26个英⽂字母组成的字符串function validate_string_number(text,value){reg=/^[A-Za-z0-9]+$/;errorInfo=text+" "+value+" 只能是数字和26个英⽂字母组成,请核实重新输⼊"; verifyByReg(value,reg,errorInfo);}//验证由数字、26个英⽂字母或者下划线组成的字符串function validate_string_numberandunderline(text,value){reg=/^\w+$/;errorInfo=text+" "+value+" 只能是数字、26个英⽂字母或者下划线组成,请核实重新输⼊"; verifyByReg(value,reg,errorInfo);}//验证邮箱function validate_email(value){reg=/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;errorInfo='邮箱 '+value+" ⽆效,请重新输⼊";verifyByReg(value,reg,errorInfo);}//验证时如果选择默认调⽤此⽅法⾦额类型,可以是正整数或保留4位有效数字的正整数/**有问题function validate_money_default(text,value){var reg=/^\d+(\.\d{4})?$/;var errorInfo=text+" "+value+" 只能是正整数或保留4位有效数字,请核实重新输⼊"; verifyByReg(value,reg,errorInfo);}**///验证输⼊的只能是中⽂function validate_chinese(text,value){reg=/^[\u4e00-\u9fa5]+$/;errorInfo=text+" "+value+" 只能是中⽂字符,请重新输⼊";verifyByReg(value,reg,errorInfo);}//验证输⼊的只能是n位的中⽂function validate_bitchinese(text,value,bit){reg=eval("/^[\\u4e00-\\u9fa5]{"+bit+"}$/");alert(reg);errorInfo=text+" "+value+" 只能是"+bit+"位中⽂字符,请重新输⼊";verifyByReg(value,reg,errorInfo);}//跟最⼤的值⽐较,此⽅法是看数字是否超出系统的上限function thanMax(text,number,max){if(number>max){errorInfo=text+" "+number+" 不能⼤于"+max+",请重新输⼊";returnInfo(errorInfo);}}//跟最⼩的值⽐较,此⽅法是看数字是否低于系统的下限function thinMin(text,number,min){if(number<min){errorInfo=text +" "+number+" 不能⼩于"+min+",请重新输⼊";returnInfo(errorInfo);}}//输⼊⽂本的字符串是否在系统的指定长度内function isLimit(text,value,length){var arr=value.split("");if(arr.length>length){errorInfo=text +" "+value+" 字符过长,请输⼊最多"+length+"位字符";returnInfo(errorInfo);}}//邮政编码的验证function validate_zipcode(value){reg=/[1-9]\d{5}(?!\d)/;errorInfo='邮政编码 '+value+" 有误,请核实重新输⼊";verifyByReg(value,reg,errorInfo);}//对数值类型的数据进⾏简单的验证和转换,因为在设置的时候没有传⼊这个参数的话就会出现js代码错误,所以应该对数值型的数据进⾏转换//⾮空字符的判定function getZeroByNull(text,value){errorInfo=text+" "+value+" 不能为空,请核实重新输⼊";if(value==null||value==''||value=='undefined'){returnInfo(errorInfo);}}//⾝份证验证,分为了两种,15位和18位function validate_IdCard(value){var size=value.split("");if(size.length==15){reg=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;//15位⾝份证验证errorInfo='位⾝份证号码 '+value+" 有误,请核实重新输⼊";}else if(size.length==18){reg=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X|x)$/;//18位⾝份证验证errorInfo='位⾝份证号码 '+value+" 有误,请核实重新输⼊";}else{errorInfo="请输⼊合法的⾝份证号码!";returnInfo(errorInfo);}verifyByReg(value,reg,errorInfo);}//每个验证都需要调⽤此⽅法function verifyByReg(value,reg,errorInfo){if(value!=''&®!=''){var regExp = new RegExp(reg);if(!regExp.test(value)){alert(errorInfo);throw errorInfo;}}}//不进过正则表达式验证,只需要返回信息,适合内部调⽤此⽅法function returnInfo(message){alert(message);throw message;}//许可证号⽣产企业的格式:QS 1234 2346 3456 其中空格可有可⽆///经营企业许可证的格式为: 湘010249 但是中国的省会简称可能会有三个字的,所以中⽂可以定义为1-3个function validate_license(value,type){if(type==1){reg=/^[a-zA-Z]{2}[ ]?(\d{4}[ ]?\d{4}[ ]?\d{4})$/;//⽣产企业许可证号errorInfo="⽣产许可证号 "+value+" 有误,请核实重新输⼊!";}else if(type==2){reg=/^[\u4e00-\u9fa5]{1,3}\d{6}$/;errorInfo="经营许可证号 "+value+" 有误,请核实重新输⼊!";}verifyByReg(value,reg,errorInfo);}//传真可以匹配的字符串如:+123 -999 999 ; +123-999 999 ;123 999 999 ;+123 999999等function validate_fax(value){reg=/^([+]{0,1})?\d{1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;errorInfo="传真 "+value+" 有误,请重新输⼊!";verifyByReg(value,reg,errorInfo);}//电话号码可以输⼊:电话或者⼿机其中⼿机号码可以是(+86)、(86)+号码,也可以是号码电话的号码可以是区号+号码区号-号码号码function validate_tel(value){reg=/(^(0\d{2,3}([-|+])?)?\d{7}$)|(^(\d{3,4}([-|+])?)?\d{7,8}$)|(^([+]?(86)?[+]?)1[3-9]\d{9}$)/;errorInfo='电话号码 '+value+" 有误,请核实重新输⼊!";verifyByReg(value,reg,errorInfo);}//⽇:⼤于0⼩于等于31的正整数function validate_day(value){reg=/(^[0]?[1-9]$)|(^[1-2]\d$)|(^[3][0-1]$)/;errorInfo='⽇期 '+value+" 有误,请核实重新输⼊!";verifyByReg(value,reg,errorInfo);}//⽉:合法⽉份function validate_month(value){reg=/(^[0]?[1-9]$)|(^[1][0-2]$)/;errorInfo='⽉份 '+value+" 有误,请核实重新输⼊!";verifyByReg(value,reg,errorInfo);}//年:合法年份在这⾥合法的年份为公元1000年⾄公元2999年function validate_year(value){reg=/^[1-2]\d{3}$/;errorInfo='年份 '+value+" 有误,请核实重新输⼊!";verifyByReg(value,reg,errorInfo);}//百分⽐:合法百分⽐(0-100之前的数字)function validate_percentage(text,value){reg=/(^[1-9](\d)?(\.\d+)?$)|(^0(\.\d+)?$)|(^100$)/;errorInfo=text +" "+value+" 有误,请输⼊0到100的数字!";verifyByReg(value,reg,errorInfo);}//系数:⼩于等于1的正数在这⾥系数的⼩数点后⾯也是2位function validate_modulus(text,value){reg=/^[0](\.\d{2})$|^[1](\.[0]{2})?$/;errorInfo=text+" "+value+" 有误,请输⼊⼩于0到1的数字!";verifyByReg(value,reg,errorInfo);}//验证⾮负的正数,包含了正整数和正浮点数function validate_posnumhaszero(text,value){checknull(text,value);reg=/^[1-9](\d+)?(\.\d+)?$|^0(\.\d+)?$/;errorInfo=text+" "+value+" 有误,请输⼊⼤于或等于0 的数字!";verifyByReg(value,reg,errorInfo);}//验证⾮正的负数,包含了负整数和负浮点数function validate_negnumhaszero(text,value){checknull(text,value);reg=/^[-][1-9](\d+)?(\.\d+)?$|^[-]0(\.\d+)?$/;errorInfo=text+" "+value+" 有误,请输⼊⼩于或等于0 的数字!";verifyByReg(value,reg,errorInfo);}//验证正数,包含了正整数和正浮点数function validate_posnum(text,value){checknull(text,value);reg=/^[1-9](\d+)?(\.\d+)?$|^0(\.\d+)$/;errorInfo=text+" "+value+" 有误,请输⼊⼤于0 的数字!";verifyByReg(value,reg,errorInfo);}//验证负数,包含了负整数和负浮点数function validate_negnum(text,value){checknull(text,value);reg=/^[-][1-9](\d+)?(\.\d+)?$|^[-]0(\.\d+)$/;errorInfo=text+" "+value+" 有误,请输⼊⼩于0 的数字!";verifyByReg(value,reg,errorInfo);}//验证数,包括所有的数值,正数、负数、正浮点数、负浮点数function validate_allnum(text,value){checknull(text,value);reg=/^[-|+]?[1-9](\d+)?(\.\d+)?$|^[-|+]?0(\.\d+)?$/;errorInfo=text+" "+value+" 有误,请输⼊数字!";verifyByReg(value,reg,errorInfo);}PS:这⾥再为⼤家提供2款⾮常⽅便的正则表达式⼯具供⼤家参考使⽤:更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》、《》及《》希望本⽂所述对⼤家JavaScript程序设计有所帮助。
JS常用正则表达式和JS控制输入框输入限制(数字、汉字、字符)
JS常⽤正则表达式和JS控制输⼊框输⼊限制(数字、汉字、字符)⽤js控制输⼊框input数字、汉字、字符1.⽂本框只能输⼊数字代码(⼩数点也不能输⼊)<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">2.只能输⼊数字,能输⼩数点.<input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')"><input name=txt1 onchange="if(/\D/.test(this.value)){alert('只能输⼊数字');this.value='';}">3.数字和⼩数点⽅法⼆<input type=text t_value="" o_value="" onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;this.o_value=this.value}"> 4.只能输⼊字母和汉字(特殊字符不能输⼊)onkeyup="value=value.replace(/[\d]|"|<|>|[\(\)\……\~\`\·\|\【\】\》\《\'\!\!\{\}\#\$\¥\%\^\&\*\(\)\[\]\:\;\:\;\\\‘\“\”\’\,\,\.\。
js常用正则表达式大全--如:数字,字符等
js常⽤正则表达式⼤全--如:数字,字符等⼀、校验数字的表达式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 有1~3位⼩数的正实数:^[0-9]+(.[0-9]{1,3})?$11 ⾮零的正整数:^[1-9]\d*$ 或 ^([1-9][0-9]*){1,3}$ 或 ^\+?[1-9][0-9]*$12 ⾮零的负整数:^\-[1-9][]0-9"*$ 或 ^-[1-9]\d*$13 ⾮负整数:^\d+$ 或 ^[1-9]\d*|0$14 ⾮正整数:^-[1-9]\d*|0$ 或 ^((-\d+)|(0+))$15 ⾮负浮点数:^\d+(\.\d+)?$ 或 ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$16 ⾮正浮点数:^((-\d+(\.\d+)?)|(0+(\.0+)?))$ 或 ^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$17 正浮点数:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ 或 ^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$18 负浮点数:^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ 或 ^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$19 浮点数:^(-?\d+)(\.\d+)?$ 或 ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$⼆、校验字符的表达式1 汉字:^[\u4e00-\u9fa5]{0,}$2 英⽂和数字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$3 长度为3-20的所有字符:^.{3,20}$4 由26个英⽂字母组成的字符串:^[A-Za-z]+$5 由26个⼤写英⽂字母组成的字符串:^[A-Z]+$6 由26个⼩写英⽂字母组成的字符串:^[a-z]+$7 由数字和26个英⽂字母组成的字符串:^[A-Za-z0-9]+$8 由数字、26个英⽂字母或者下划线组成的字符串:^\w+$ 或 ^\w{3,20}$9 中⽂、英⽂、数字包括下划线:^[\u4E00-\u9FA5A-Za-z0-9_]+$10 中⽂、英⽂、数字但不包括下划线等符号:^[\u4E00-\u9FA5A-Za-z0-9]+$ 或 ^[\u4E00-\u9FA5A-Za-z0-9]{2,20}$11 可以输⼊含有^%&',;=?$\"等字符:[^%&',;=?$\x22]+12 禁⽌输⼊含有~的字符:[^~\x22]+三、特殊需求表达式1 Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$2 域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?3 InternetURL:[a-zA-z]+://[^\s]* 或 ^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$4 ⼿机号码:^(13[0-9]|14[0-9]|15[0-9]|166|17[0-9]|18[0-9]|19[8|9])\d{8}$4.1 var re = /^(1[3-9][0-9]{9})$/;//如:if (re.test(vmData.PHONE) === false) {alert("⼿机号格式不正确");return;}5 电话号码("XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX):^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$6 国内电话号码(0511-*******、021-********):\d{3}-\d{8}|\d{4}-\d{7}7 18位⾝份证号码(数字、字母x结尾):^((\d{18})|([0-9x]{18})|([0-9X]{18}))$8 帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$9 密码(以字母开头,长度在6~18之间,只能包含字母、数字和下划线):^[a-zA-Z]\w{5,17}$10 强密码(必须包含⼤⼩写字母和数字的组合,不能使⽤特殊字符,长度在8-10之间):^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$11 ⽇期格式:^\d{4}-\d{1,2}-\d{1,2}12 ⼀年的12个⽉(01~09和1~12):^(0?[1-9]|1[0-2])$13 ⼀个⽉的31天(01~09和1~31):^((0?[1-9])|((1|2)[0-9])|30|31)$14 钱的输⼊格式:15 1.有四种钱的表⽰形式我们可以接受:"10000.00" 和 "10,000.00", 和没有 "分" 的 "10000" 和 "10,000":^[1-9][0-9]*$16 2.这表⽰任意⼀个不以0开头的数字,但是,这也意味着⼀个字符"0"不通过,所以我们采⽤下⾯的形式:^(0|[1-9][0-9]*)$17 3.⼀个0或者⼀个不以0开头的数字.我们还可以允许开头有⼀个负号:^(0|-?[1-9][0-9]*)$18 4.这表⽰⼀个0或者⼀个可能为负的开头不为0的数字.让⽤户以0开头好了.把负号的也去掉,因为钱总不能是负的吧.下⾯我们要加的是说明可能的⼩数部分:^[0-9]+(.[0-9]+)?$19 5.必须说明的是,⼩数点后⾯⾄少应该有1位数,所以"10."是不通过的,但是 "10" 和 "10.2" 是通过的:^[0-9]+(.[0-9]{2})?$20 6.这样我们规定⼩数点后⾯必须有两位,如果你认为太苛刻了,可以这样:^[0-9]+(.[0-9]{1,2})?$21 7.这样就允许⽤户只写⼀位⼩数.下⾯我们该考虑数字中的逗号了,我们可以这样:^[0-9]{1,3}(,[0-9]{3})*(.[0-9]{1,2})?$22 8.1到3个数字,后⾯跟着任意个逗号+3个数字,逗号成为可选,⽽不是必须:^([0-9]+|[0-9]{1,3}(,[0-9]{3})*)(.[0-9]{1,2})?$23 备注:这就是最终结果了,别忘了"+"可以⽤"*"替代如果你觉得空字符串也可以接受的话(奇怪,为什么?)最后,别忘了在⽤函数时去掉去掉那个反斜杠,⼀般的错误都在这⾥24 xml⽂件:^([a-zA-Z]+-?)+[a-zA-Z0-9]+\\.[x|X][m|M][l|L]$25 中⽂字符的正则表达式:[\u4e00-\u9fa5]26 双字节字符:[^\x00-\xff] (包括汉字在内,可以⽤来计算字符串的长度(⼀个双字节字符长度计2,ASCII字符计1))27 空⽩⾏的正则表达式:\n\s*\r (可以⽤来删除空⽩⾏)28 HTML标记的正则表达式:<(\S*?)[^>]*>.*?</\1>|<.*? /> (⽹上流传的版本太糟糕,上⾯这个也仅仅能部分,对于复杂的嵌套标记依旧⽆能为⼒)29 ⾸尾空⽩字符的正则表达式:^\s*|\s*$或(^\s*)|(\s*$) (可以⽤来删除⾏⾸⾏尾的空⽩字符(包括空格、制表符、换页符等等),⾮常有⽤的表达式)30 腾讯QQ号:[1-9][0-9]{4,} (腾讯QQ号从10000开始)31 中国邮政编码:[1-9]\d{5}(?!\d) (中国邮政编码为6位数字)32 IP地址:\d+\.\d+\.\d+\.\d+ (提取IP地址时有⽤)33 IP地址:((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)) (由@飞龙三少提供,感谢共享)转载⾃:作者:出处:本⽂版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在⽂章页⾯明显位置给出原⽂连接,否则保留追究法律责任的权利。
17种常用的JS正则表达式非负浮点数非负正数
17种常⽤的JS正则表达式⾮负浮点数⾮负正数<input type='text' id='SYS_PAGE_JumpPage' name='SYS_PAGE_JumpPage' size='3' maxlength='5'onkeyup='this.value=this.value.replace(/[^1-9]\D*$/,"")' ondragenter="return false" onpaste="return!clipboardData.getData('text').match(/\D/)"" style="ime-mode:disabled;">1.只能输⼊数字和英⽂的:<input onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" ID="Text1" NAME="Text1">2.只能输⼊数字的:<input onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" ID="Text2" NAME="Text2">3.只能输⼊全⾓的:<input onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')"onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))" ID="Text3" NAME="Text3"> 4.只能输⼊汉字的:<input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))" ID="Text4" NAME="Text4"> 5.邮件地址验证:var regu = "^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|NET|com|COM|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT)$"var re = new RegExp(regu);if (s.search(re) != -1) {return true;} else {window.alert ("请输⼊有效合法的E-mail地址!")return false;}6.⾝份证:"^\\d{17}(\\d|x)$"7.17种正则表达式"^\\d+$" //⾮负整数(正整数 + 0)"^[0-9]*[1-9][0-9]*$" //正整数"^((-\\d+)|(0+))$" //⾮正整数(负整数 + 0)"^-[0-9]*[1-9][0-9]*$" //负整数"^-?\\d+$" //整数"^\\d+(\\.\\d+)?$" //⾮负浮点数(正浮点数 + 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+)?)|(0+(\\.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+)?$" //浮点数"^[A-Za-z]+$" //由26个英⽂字母组成的字符串"^[A-Z]+$" //由26个英⽂字母的⼤写组成的字符串"^[a-z]+$" //由26个英⽂字母的⼩写组成的字符串"^[A-Za-z0-9]+$" //由数字和26个英⽂字母组成的字符串"^\\w+$" //由数字、26个英⽂字母或者下划线组成的字符串"^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$" //email地址"^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$" //url=============================================1.取消按钮按下时的虚线框在input⾥添加属性值 hideFocus 或者 HideFocus=true2.只读⽂本框内容在input⾥添加属性值 readonly3.防⽌退后清空的TEXT⽂档(可把style内容做做为类引⽤)<INPUT style=behavior:url(#default#savehistory); type=text id=oPersistInput>4.ENTER键可以让光标移到下⼀个输⼊框<input onkeydown="if(event.keyCode==13)event.keyCode=9" >5.只能为中⽂(有闪动)<input onkeyup="value="/value.replace(/[" -~]/g,’’)" onkeydown="if(event.keyCode==13)event.keyCode=9">6.只能为数字(有闪动)<input onkeyup="value="/value.replace(/["^\d]/g,’’)"onbeforepaste="clipboardData.setData(’text’,clipboardData.getData(’text’).replace(/[^\d]/g,’’))">7.只能为数字(⽆闪动)<input ime-mode:disabled" onkeydown="if(event.keyCode==13)event.keyCode=9" onKeyPress="if ((event.keyCode<48 || event.keyCode>57)) event.returnValue=false">8.只能输⼊英⽂和数字(有闪动)<input onkeyup="value="/value.replace(/[\W]/g,"’’)"onbeforepaste="clipboardData.setData(’text’,clipboardData.getData(’text’).replace(/[^\d]/g,’’))">9.屏蔽输⼊法<input type="text" name="url" ime-mode:disabled" onkeydown="if(event.keyCode==13)event.keyCode=9">10. 只能输⼊数字,⼩数点,减号(-)字符(⽆闪动)<input onKeyPress="if (event.keyCode!=46 && event.keyCode!=45 && (event.keyCode<48 || event.keyCode>57)) event.returnValue=false">11. 只能输⼊两位⼩数,三位⼩数(有闪动)<input maxlength=9 onkeyup="if(value.match(/^\d{3}$/))value="/value.replace(value,parseInt(value/10))";value="/value.replace(/\.\d*\./g,’."’)" onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 && event.keyCode!=45 || value.match(/^\d{3}$/) || /\.\d{3}$/.test(value)) {event.returnValue=false}" id=text_kfxe name=text_kfxe>。
100至5000正则js表达式
100至5000正则js表达式
正则表达式是一种用来匹配字符串模式的工具,可以用于验证、搜索或替换字符串。
在JavaScript中,可以使用正则表达式来进行
字符串操作。
下面是一个匹配长度为3到4位数字的正则表达式:
javascript.
/^\d{3,4}$/。
解释一下这个正则表达式:
`^` 表示匹配字符串的开头。
`\d` 表示匹配任意数字。
`{3,4}` 表示前面的数字可以重复3到4次。
`$` 表示匹配字符串的结尾。
这个正则表达式可以用来验证一个字符串是否由3到4位数字
组成。
如果你需要匹配100至5000之间的数字,可以使用以下正则表达式:
javascript.
/^(100|[1-9]\d{2,3}|5000)$/。
解释一下这个正则表达式:
`^` 表示匹配字符串的开头。
`100` 匹配数字100。
`|` 表示或者。
`[1-9]` 匹配1到9之间的数字。
`\d{2,3}` 匹配2到3位数字。
`5000` 匹配数字5000。
`$` 表示匹配字符串的结尾。
这个正则表达式可以用来验证一个字符串是否为100至5000之间的数字。
希望以上的解释能够帮助你理解如何使用正则表达式来匹配特定范围内的数字。
中文、英文、空格 js正则表达式
主题:中文、英文、空格JS正则表达式内容:1. 概述正则表达式是一种强大的工具,用于在字符串中进行模式匹配和搜索。
在JavaScript中,我们可以使用正则表达式来处理中文、英文和空格。
2. 中文正则表达式匹配中文字符的正则表达式可以使用Unicode编码,例如:```javascriptvar chineseReg = /[\u4e00-\u9fa5]/;```这个正则表达式会匹配所有的中文字符。
例如:```javascriptchineseReg.test('你好吗'); // truechineseReg.test('hello'); // false```3. 英文正则表达式匹配英文字符的正则表达式可以使用字母范围,例如:```javascriptvar englishReg = /[a-zA-Z]/;```这个正则表达式会匹配所有的英文字符。
例如:```javascriptenglishReg.test('hello'); // trueenglishReg.test('你好吗'); // false```4. 空格正则表达式匹配空格字符的正则表达式可以使用空格符号,例如:```javascriptvar spaceReg = /\s/;```这个正则表达式会匹配所有的空格字符。
例如:```javascriptspaceReg.test('hello world'); // truespaceReg.test('你好吗'); // false```5. 综合应用在实际开发中,我们经常需要处理多种字符类型的字符串。
可以使用上述的中文、英文和空格正则表达式,结合JavaScript中的RegExp 对象来进行复杂的模式匹配和替换操作。
例如:```javascriptvar str = '你好,hello world';var chineseReg = /[\u4e00-\u9fa5]/;var englishReg = /[a-zA-Z]/;var spaceReg = /\s/;for (var i = 0; i < str.length; i++) {if (chineseReg.test(str[i])) {console.log('中文字符:' + str[i]);} else if (englishReg.test(str[i])) {console.log('英文字符:' + str[i]);} else if (spaceReg.test(str[i])) {console.log('空格字符:' + str[i]);}}```6. 总结在JavaScript中,使用正则表达式处理中文、英文和空格字符是非常方便的。
JS常用正则表达式
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配网址URL的正则表达式:http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?
^-?[1-9]\d*$ //匹配整数
^[1-9]\d*|0$ //匹配非负整数(正整数 + 0)
^-[1-9]\d*|0$ //匹配非正整数(负整数 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ //匹配正浮点数
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ //匹配负浮点数
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。
只能输入由数字、26个英文字母或者下划线组成的字符串:"^\w+$"。
IdCard : /^\d{15}(\d{2}[A-Za-z0-9])?$/
Currency : /^\d+(\.\d+)?$/
JS正则表达式验证(非常全)
JS正则表达式验证(⾮常全)<script type="text/javascript">function SubmitCk() {var reg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;if (!reg.test($("#txtEmail").val())) {alert("请输⼊正确邮箱地址")return false;}}</script>验证数字的正则表达式集验证数字:^[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地址:/^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/验证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。
JS 各种页面校验规则正则表达式
id code名称205reg11-10,4,90-100206reg28位或11位半角英文大写,半角数字,5、6位不为CN207reg5412或24小时到时分208reg56数字(1-9开头的数字)209reg3A1-B10,C4,D90-D100210reg5半角数字,特殊字符()-+空格211reg4半角数字,中文,特殊字符_212reg6半角英文213reg7半角英文,半角标点214reg8半角英文,半角数字215reg66半角英文,半角数字,必含英文216reg16半角英文,半角数字,空白字符217reg17半角英文,半角数字,空格218reg9半角英文,半角数字,特殊字符-219reg65半角英文,半角数字,特殊字符.空白字符220reg10半角英文,半角数字,特殊字符.空格221reg11半角英文,半角数字,特殊字符/[]+222reg14半角英文,半角数字,特殊字符/-[]+.,?()'223reg19半角英文,半角数字,特殊字符/[]+空格224reg15半角英文,半角数字,特殊字符/-+?().,'225reg63半角英文,半角数字,特殊字符/-+?().,'空白字符226reg12半角英文,半角数字,特殊字符_,半角标点,必有半角227reg13半角英文,半角数字,特殊字符_,必有半角英文228reg18半角英文,半角数字,特殊字符-空格229reg20半角英文,半角数字,中文230reg21半角英文,半角数字,中文,特殊字符()-231reg22半角英文,半角数字,中文,特殊字符,.()232reg23半角英文,半角数字,中文,特殊字符',.-/()233reg74半角英文,半角数字,中文,特殊字符_234reg24半角英文大写,半角数字235reg61电话(0-9()-组合)236reg62电话(0-9空格()-组合)237reg25非半角238reg26非半角数字,非全角,非特殊字符[]^$~@#%&<>{}'"239reg27非全角240reg28非全角,非特殊字符` < > \ ' % ; ( ) & + \\ # ? { 241reg29非特殊字符,'"{}_242reg64非特殊字符[]^$\~@#%¥&<>{}:'"243reg30非特殊字符[]^$~@#%&<>{}:'"244reg31非特殊字符[]^$~@%&<>{}:'"/245reg32非特殊字符[]^$~@#%&<>{}:'";246reg33非特殊字符空格` < > \ ' % ; ( ) & + \\ # ? { } \248reg36非中文249reg37非中文,非特殊字符,'"250reg38非中文,非特殊字符,'"{}_251reg39非中文,非特殊字符`~!@#$%^*_=[]{};,'"252reg40非中文,非特殊字符`~!@#$%^*_=[]{};,'"|:-253reg41非中文全角标点254reg52分/秒255reg42金额最长8位整数,2位小数可选256reg43金额最长13位整数,2位小数可选257reg44金额1位可选小数,允许负数258reg45金额最长15位整数+2位小数259reg46金额最长4位小数点的正数或负数260reg47日期(年月)/261reg48日期(年月日)/262reg49日期-/.263reg50日期时间(时分秒)/264reg51日期时间(时分秒)-/.265reg55身份证(15,18位)266reg57数字0-9267reg58数字1-9268reg53小时269reg59邮件270reg35中文271reg60金额最长8位整数+2位小数273reg68数字(1-9开头的数字或者0)274reg71半角数字和空格275reg69必须包含一个半角英文字母276reg70必须包含一个数字277reg72登录名(1-20位,不能空格开始和结束)278reg73登录名新(1-20位,不能空格开始和结束)279reg67密码(8-20位长度的数字,英文字母和标点符号组成,280reg75非中文,非特殊字符[]^$\~@#%¥&<>{}:'"281reg76金额最长6位整数+4位小数282reg77金额4位小数283reg78金额最长10位整数+2位小数284reg79金额最长10位整数+4位小数285reg80金额大于等于10的整数,非特殊字符.286reg81金额大于等于1的整数+1位小数可选287reg82金额100整数倍288reg83金额最长4位整数+4位小数可选289reg84金额最长4位整数+2位小数可选291reg85金额最长15位整数+2位小数可选292reg86数字(两位月份+年份后两位)294reg88金额最长18位整数+2位小数可选295reg89半角数字,中文,特殊字符空格296reg90密码(1-20位任意字符)297reg91密码(欧非8-20位数字、字母、字符组合)298reg92半角英文大写,半角数字,空格/299reg93整数1-366(001或01都可)300reg94密码(6位数字或8-20位半角字母、数字和特殊字符~!@# 301reg95金额最长12位整数+自动补齐的.00302reg96金额最长7位整数+2位小数303reg97金额最长5位整数+4位小数304reg98半角英文,半角数字,特殊字符-_305reg99金额不超过5万元+2位小数306reg100金额最长15位整数307reg101金额最长15位整数+1位小数可选308reg102金额最长12位整数+2位小数309reg103全角、半角数字310reg104全角、半角数字或字母311reg105非特殊字符[]',^$\~:;!@?#%&<>''""312reg106半角英文或半角数字+特殊字符,或-,+半角英文或半角313reg107整数不能超过10000+最多2位小数314reg108半角英文,半角数字,中文,特殊字符,;!?-./315reg109形如1212-13131,13121443-2888(客户申请号)316reg110邮件(企业只校验@不校验 . 和com)317reg111非特殊字符[]^$\~@#%&<>{}`*318reg112小时(24制,一位两位都可以)319reg114密码(8-20位半角字母、数字和特殊字符~!@#$%^&*()_+ 320reg115半角英文,半角数字,中文,特殊字符空格321reg116非特殊字符空格322reg113收款人支持新疆名称323reg117半角英文,半角数字,特殊字符-_,非oOiI324reg118非特殊字符oOiI{}[]%'""`~$^_|\:\u0000-\u001F\u008 515reg119金额最长10位整数+2位小数可选516reg120金额最长13位整数+1位小数517reg121金额最长11位整数+2位小数可选518reg122非特殊字符[]^$~@#%&<>{}:'",不允许输入回车,非全519reg123最长18位整数+1位小数可选520reg124金额最长15位整数+2位小数(允许0)521reg125数字15、16或19位整数522reg126中文,字母,数字,非特殊字符[]^$~@#%&<>{}:'\";非523reg127非英文524reg128半角全角英文,半角英文逗号reg129非全角英文,非全角数字,不允许回车326reg501hourDigitStyle327reg502passStyle328reg503passwordStyle329reg504otpStyle330reg505smcStyle331reg506newUserIdStyle332reg507dateStyle333reg508date10Style334reg509dateNoConvertStyle335reg510date10StyleOptional 336reg511time6Style337reg512time8Style338reg513datetime14Style339reg514datetime19Style340reg515amountStyle341reg516money15d2Style342reg517money15d2StyleToString 343reg518money18d2Style344reg519nnMoney15d2Style345reg520nzMoney15d2Style346reg521batchMoney15d2Style 347reg522zMoney18d2Style348reg523zMoney18d8Style349reg524zMoney15d5Style350reg525nameStyle351reg526swiftNameStyle352reg527swiftPayerAddressStyle 353reg528swiftPayeeAddressStyle 354reg529swiftPayeeNumStyle355reg530swiftBankNameStyle356reg531swiftRemarkStyle357reg532accNickNameStyle358reg533signStyle359reg534stepStyle360reg535bondAmountStyle361reg536selfDrawWeightStyle 362reg537dayCountInMonth363reg538phoneStyle364reg539emailStyle365reg540annuityAddress100Style 366reg541annuityPlanNo367reg542loginNameResetWP7Style 368reg543quotaAmountStyle370reg545applynameStyle371reg546applyAddress20Style372reg547applyAddress120Style373reg548applyphoneStyle374reg549applyemailStyle375reg550userNameStyle376reg551ovpRemarkStyle377reg552ovpAmountStyle378reg553oveAmountStyle379reg554payeeNameStyle380reg555addressStyle381reg556string200Style382reg557string20Style383reg558string10Style384reg559applyIdentityType385reg560SumCntLmt386reg561datex10Style387reg562payeeNamexStyle388reg563custSerNoxStyle389reg564amountx13Style390reg565remarkx200Style391reg566ovpEmailStyle392reg567datetimex19Style393reg568challengeAnswerStyle394reg569optAddressStyle395reg570goldStoreAddressStyle396reg571prvcShortNameStyle397reg572electronBankPayeeNameStyle398reg573electronBankPayeeAccNumStyle 399reg574electronBankPayeeMobileStyle 400reg575electronBankPayeeBankNameStyle 401reg576stckResOpenAcctAddrStyle402reg577money12d2Style403reg578xpadAmountStyle404reg579idStyle1405reg580sofCustRemarkStyle406reg581applyusernameStyle407reg582freeRemitNameStyle408reg583furInfStyle409reg584martCodeStyle410reg585bankNameStyle411reg586wealthSofCustRemarkStyle412reg587wealthRemittorNameStyle414reg589oveIBANCode415reg590oveSEPARemarkStyle416reg591remarkStyle_HCM417reg592oveBatchAccountStyle3 418reg593oveMoney10d2Style419reg594oveBatchDate420reg595ovePayeeNameInBankStyle 421reg596oveBatchAccountStyle15 422reg597remarkStyle423reg598oveBatchSwiftName424reg599oveBankSwiftPaper425reg600swiftStyle426reg601oveBankNameStyle427reg602ovePayeeNameCh428reg603oveBankOtherBankCode429reg604oveBatchOtherName430reg605pidStyle431reg606englishStyle432reg607billerNameStyle433reg608trfseqsStyle434reg609cusseqsStyle435reg610oveQueryPayeeActno436reg611oveEmailStyle437reg612faxStyle438reg613ovePayerEnNameStyle439reg614ASPIDNum440reg615ippsTimeOptionStyle441reg616ippsTimeMandatoryStyle 442reg617ippsAmountOptionStyle 443reg618ippsAmountMandatoryStyle 444reg619date10UnionStyle445reg620oveBatchBocName446reg621oveBatchAccountStyle2 447reg622oveBatchCustomerNum448reg623integerStyle449reg624oveChNameStyle450reg625ovePayeeName451reg626oveMoney12d2Style452reg627oveBpayBillerAlias453reg628otherRemarkStyle454reg629accountStyle455reg630person120Style456reg631openBankStyle458reg633chinese1to60Style459reg634annuityPlanNoStyle460reg635actAccNameStyle461reg636actCNAPSnoStyle462reg637zMoney18d2toStringStyle 463reg638date10toStringStyle464reg639batseqsStyle465reg640payeeAccountStyle35466reg641furinfoStyle467reg642timestamp19Style468reg643monthStyle469reg644withoutDayStyle1470reg645billAmountStyle471reg646payeeAccountStyle76472reg647payeeAccountStyle60473reg648QueryAccountNoStyle32 474reg649payagreementnoStyle475reg650furinfo80Style476reg651money14d2Style477reg652account25Style478reg653number10Style479reg654bocIbknumStyle480reg655pybaccountStyle481reg656batchMoney13d2Style1 482reg657batchMoney13d2Style483reg658date8Style484reg659pybInfoStyle485reg660ASPBankNumStyle486reg661ASPbankNameStyle487reg662toActNameStyle488reg663pybaccountStyleGat489reg664toActNameStyleGat490reg665pybInfoStyleGat491reg666agreementNoStyle492reg667chinese1to120Style493reg668chinese1to512Style494reg669IPStyle495reg670obligatePasswordStyle 496reg671ippsPlanCodeOptionStyle 497reg672ippsCardNicknameStyle 498reg673ippsHintInfoStyle499reg674ippsAcctNoStyle500reg675ippsExpDate502reg677otherAccountNameStyle503reg678zMoney18d2Style1504reg679payeeActNumStyle505reg680payeeActnoStyle32506reg681accountNoStyle507reg682ActorEmailStyle508reg683entDraftTranRemarkStyle509reg684welcomeInfoStyle510reg685payeeAccountNameNewStyle 511reg686entAddressStyle512reg687payeeAccountNumStyleForGcms 513reg688payeeAccountNum32Style514reg689emsgLimitreg57numberStylreg57scheduleNureg57mobile11Streg57mobileStylreg57I18nMobilereg57mobileConfreg57postcodeStreg57orderSeqStreg57checkNoStyreg57ovpAccountreg57accountIdSreg57number4Styreg57chequeNoStreg57transIdStyreg57transIdxStreg57transId15Sreg57stckThirdAreg57postCodeOpreg57remitNo13Sreg57wealthStatsharedAccoreg57reg57timeInvestreg57totalPerioreg57globalCusIreg57payCodeStyreg57digitStylereg57oveBatchToreg57ibknumStylorgidtStylreg57reg57 oveMobileSreg57 ippsSeqOptreg57 ippsSeqManreg57 cusRefStylreg57 draftNumbe batSeqStylreg57reg57 actTel1Styreg57 payerIdSty compositeSreg57reg57 composite1reg57 signNoStylreg57 voucherNoSreg57 pybNumStylreg57 number16Streg57 cnapsStylereg57 dranumStylreg57 batDraftBoreg57 compoSiteDreg57 billerCodereg57 toAccountN bocCheckstreg57reg57 ippsMobilereg57 ovpPayeeAc actBankCnareg57reg57 cdsCnapsStreg57 entMobileSreg24 promcodeStreg24 ovePayerSwreg8 loginNameWreg8 oveBatchPareg8 oveBatchOtreg8 oveBatchPareg8 oveBatchAcreg8 taAccountSreg8 identityNureg8 cateCodeStreg8 cusseqStylreg8 trfseqStyl businessIdreg8reg8 swiftNumStreg8 billAliasSreg8 ippsOrderNreg8 payeeAliasreg24 ovefurinfo正则/^(\d{1,16}[\,|\-]{1})*\d{1,16}$//^((?!.{4}CN.*)[A-Z0-9]{8})$|^((?!.{4}CN.*)[A-Z0-9]{1 /^([0-1][0-9]|[2][0-3]):([0-5][0-9])$//^[1-9]+[0-9]*$//^([0-9a-zA-Z]{1,16}[\,|\-]{1})*[0-9a-zA-Z]{1,16}$/ /^[0-9()\-+ ]*$//^[0-9u2E80-u9FFF_]*$//^[A-Za-z]*$//^[A-Za-z0-9().,\[\]'?\s\-+]*$//^[0-9A-Za-z]+$//(?=^[0-9a-zA-Z]*$)(?=.*[a-zA-Z]).*$//^[a-zA-Z0-9\s]*$//^[a-zA-Z0-9 ]*$//^[a-zA-Z0-9-]*$//^[\.a-zA-Z\s,0-9]*$//^[A-Za-z0-9. ]+$//^[A-Za-z0-9\/\[\]+]*$//^[A-Za-z0-9\/\-\[\]+.,?()']*$//^[A-Za-z0-9\s\/\[\]+]{1,140}$//^[A-Za-z0-9\/\-+?().,' ]+$//^[a-zA-Z0-9\/+\-?()\s.,']*$//^[a-zA-Z]+[0-9]+([_,]*)$//(?=.*[a-zA-Z])^[0-9a-zA-Z_]*$//^[A-Za-z0-9\s\-]+$//^[a-zA-Z0-9\u4E00-\u9FFF]*$//^[a-zA-Z0-9\u2E80-\u9FFF\-\(\)]*$//^[0-9A-Za-z,.() \u4E00-\u9FBB\u3400-\u4DBF\uF900-\uF /^[a-zA-Z0-9\u2E80-\u9FFF',\.\-\/\(\)]*$//^[a-zA-Z0-9\u2E80-\u9FFF_]*$//^[A-Z0-9]*$//^[0-9\(\)\-]*$//^[0-9 \-\(\)]*$//^[^\u003C\u003E\u0026\u4E00-\u9FBB\u3400-\u4DBF\uF90 /^[^0-9\[\]\^\$\~\@\#\%\&\<\>\{\}\'\"]+$//^[^\uFF00-\uFFFF]*$//^[^\uFF00-\uFFFF\`\<\>\\\'\%\;\(\)\&\+\#\?\{\}\|\^\[ /^[^,'"{}_\u4E00-\u9FBB\u3400-\u4DBF\uF900-\uFAD9\u30 /^[^\[\]^$\\~@#%¥&<>{}:'"]*$//^[^\[\]\^\$\~@#%&<>\{\}:'"]*$//^[^\[\]^$\\~@%&<>{}:'"\/]*$//^[^\[\]^$\\~@#%&<>{}:'";]*$//^[^\`\<\>\\\'\%\;\(\)\&\+\#\?\{\}\|\^\[\]\~\`\<\>/^[^\u003C\u003E\u0026\u4E00-\u9FBB\u3400-\u4DBF\uF90 /^[^,'"\u4E00-\u9FBB\u3400-\u4DBF\uF900-\uFAD9\u3000-/^[^,'"{}_\u4E00-\u9FBB\u3400-\u4DBF\uF900-\uFAD9\u30 /^[^`~!@#$%^*_=\[\]{};,'"|\\:\-\u003C\u003E\u0026\u4E /^[^ `~!@#$%^*_=\[\]{}'"|\\:\-\u003C\u003E\u0026\u4E0 /^[^?,。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JS正则表达式大全JS正则表达式大全【1】正则表达式中的特殊字符【留着以后查用】字符含意\ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界。
-或-对正则表达式功能字符的还原,如"*"匹配它前面元字符0次或多次,/a*/将匹配a,aa,aaa,加了"\"后,/a\*/将只匹配"a*"。
^ 匹配一个输入或一行的开头,/^a/匹配"an A",而不匹配"An a"$ 匹配一个输入或一行的结尾,/a$/匹配"An a",而不匹配"an A"* 匹配前面元字符0次或多次,/ba*/将匹配b,ba,baa,baaa+ 匹配前面元字符1次或多次,/ba*/将匹配ba,baa,baaa? 匹配前面元字符0次或1次,/ba*/将匹配b,ba(x) 匹配x保存x在名为$1...$9的变量中x|y 匹配x或y{n} 精确匹配n次{n,} 匹配n次以上{n,m} 匹配n-m次[xyz] 字符集(character set),匹配这个集合中的任一一个字符(或元字符)[^xyz] 不匹配这个集合中的任何一个字符[\b] 匹配一个退格符\b 匹配一个单词的边界\B 匹配一个单词的非边界\cX 这儿,X是一个控制符,/\cM/匹配Ctrl-M\d 匹配一个字数字符,/\d/ = /[0-9]/\D 匹配一个非字数字符,/\D/ = /[^0-9]/\n 匹配一个换行符\r 匹配一个回车符\s 匹配一个空白字符,包括\n,\r,\f,\t,\v等\S 匹配一个非空白字符,等于/[^\n\f\r\t\v]/\t 匹配一个制表符\v 匹配一个重直制表符\w 匹配一个可以组成单词的字符(alphanumeric,这是我的意译,含数字),包括下划线,如[\w]匹配"$5.98"中的5,等于[a-zA-Z0-9]\W 匹配一个不可以组成单词的字符,如[\W]匹配"$5.98"中的$,等于[^a-zA-Z0-9]。
JS正则表达式大全【2】正则表达式是一个描述字符模式的对象。
JavaScript的RegExp对象和String对象定义了使用正则表达式来执行强大的模式匹配和文本检索与替换函数的方法.在JavaScript中,正则表达式是由一个RegExp对象表示的.当然,可以使用一个RegExp()构造函数来创建RegExp对象, 也可以用JavaScript 1.2中的新添加的一个特殊语法来创建RegExp对象.就像字符串直接量被定义为包含在引号内的字符一样, 正则表达式直接量也被定义为包含在一对斜杠(/)之间的字符.所以,JavaScript可能会包含如下的代码:var pattern = /s$/;这行代码创建一个新的RegExp对象,并将它赋给变量parttern.这个特殊的RegExp对象和所有以字母"s"结尾的字符串都匹配.用RegExp()也可以定义一个等价的正则表达式,代码如下:var pattern = new RegExp("s$");无论是用正则表达式直接量还是用构造函数RegExp(),创建一个RegExp对象都是比较容易的.较为困难的任务是用正则表达式语法来描述字符的模式.JavaScript采用的是Perl语言正则表达式语法的一个相当完整的子集.正则表达式的模式规范是由一系列字符构成的.大多数字符(包括所有字母数字字符)描述的都是按照字面意思进行匹配的字符.这样说来,正则表达式/java/就和所有包含子串"java" 的字符串相匹配.虽然正则表达式中的其它字符不是按照字面意思进行匹配的,但它们都具有特殊的意义.正则表达式/s$/ 包含两个字符.第一个特殊字符"s" 是按照字面意思与自身相匹配.第二个字符"$" 是一个特殊字符,它所匹配的是字符串的结尾.所以正则表达式/s$/ 匹配的就是以字母"s" 结尾的字符串.1.直接量字符我们已经发现了,在正则表达式中所有的字母字符和数字都是按照字面意思与自身相匹配的.JavaScript 的正则表达式还通过以反斜杠(\)开头的转义序列支持某些非字母字符.例如,序列"\n" 在字符串中匹配的是一个直接量换行符.在正则表达式中,许多标点符号都有特殊的含义.下面是这些字符和它们的含义: 正则表达式的直接量字符字符匹配________________________________字母数字字符自身\ f 换页符\ n 换行符\ r 回车\ t 制表符\ v 垂直制表符\ / 一个/ 直接量\ \ 一个\ 直接量\ . 一个. 直接量\ * 一个* 直接量\ + 一个+ 直接量\ ? 一个? 直接量\ | 一个| 直接量\ ( 一个( 直接量\ ) 一个) 直接量\ [ 一个[ 直接量\ ] 一个] 直接量\ { 一个{ 直接量\ } 一个} 直接量\ XXX 由十进制数XXX 指定的ASCII码字符\ Xnn 由十六进制数nn 指定的ASCII码字符\ cX 控制字符^X. 例如, \cI等价于\t, \cJ等价于\n___________________________________________________如果想在正则表达式中使用特殊的标点符号,必须在它们之前加上一个"\" .2.字符类将单独的直接符放进中括号内就可以组合成字符类.一个字符类和它所包含的任何一个字符都匹配,所以正则表达式/ [abc] / 和字母"a" , "b" , "c" 中的任何一个都匹配.另外还可以定义否定字符类,这些类匹配的是除那些包含在中括号之内的字符外的所有字符.定义否定字符尖时,要将一个^ 符号作为从左中括号算起的第一个字符.正则表达式的集合是/ [a-zA-z0-9] / .由于某些字符类非常常用,所以JavaScript的正则表达式语法包含一些特殊字符和转义序列来表示这些常用的类.例如, \s 匹配的是空格符,制表符和其它空白符, \s 匹配的则是空白符之外的任何字符.正则表灰式的字符类字符匹配____________________________________________________[...] 位于括号之内的任意字符[^...] 不在括号之中的任意字符. 除了换行符之外的任意字符,等价于[^\n]\w 任何单字字符, 等价于[a-zA-Z0-9]\W 任何非单字字符,等价于[^a-zA-Z0-9]\s 任何空白符,等价于[\ t \ n \ r \ f \ v]\S 任何非空白符,等价于[^\ t \ n \ r \ f \ v]\d 任何数字,等价于[0-9]\D 除了数字之外的任何字符,等价于[^0-9][\b] 一个退格直接量(特例)________________________________________________________________3.复制用以上的正则表式的语法,可以把两位数描述成/ \ d \ d /,把四位数描述成/ \d \ d \ d \ d /.但我们还没有一种方法可以用来描述具有任意多数位的数字或者是一个字符串.这个串由三个字符以及跟随在字母之后的一位数字构成.这些复杂的模式使用的正则表达式语法指定了该表达式中每个元素要重复出现的次数.指定复制的字符总是出现在它们所作用的模式后面.由于某种复制类型相当常用.所以有一些特殊的字符专门用于表示它们.例如: +号匹配的就是复制前一模式一次或多次的模式.下面的表列出了复制语法.先看一个例子:/\d{2, 4}/ //匹配2到4间的数字./\w{3} \d?/ //匹配三个单字字符和一个任意的数字./\s+java\s+/ //匹配字符串"java" ,并且该串前后可以有一个或多个空格./[^"] * / //匹配零个或多个非引号字符.正则表达式的复制字符字符含义__________________________________________________________________{n, m} 匹配前一项至少n次,但是不能超过m次{n, } 匹配前一项n次,或者多次{n} 匹配前一项恰好n次? 匹配前一项0次或1次,也就是说前一项是可选的. 等价于{0, 1}* 匹配前一项0次或多次.等价于{0,}___________________________________________________________________4.选择,分组和引用正则表达式的语法还包括指定选择项,对子表达式分组和引用前一子表达式的特殊字符.字符| 用于分隔供选择的字符.例如: /ab|cd|ef/ 匹配的是字符串"ab",或者是字符串"cd",又或者"ef". /\d{3}|[a-z]{4}/ 匹配的是要么是一个三位数,要么是四个小写字母.在正则表达式中括号具有几种作用.它的主要作用是把单独的项目分组成子表达式,以便可以像处理一个独立的单元那种用*、+或? 来处理那些项目.例如: /java(script) ?/ 匹配的是字符串"java",其后既可以有"script",也可以没有. / (ab|cd) + |ef) / 匹配的既可以是字符串"ef",也可以是字符串"ab" 或者"cd" 的一次或多次重复.在正则表达式中,括号的第二个用途是在完整的模式中定义子模式。
当一个正则表达式成功地和目标字符串相匹配时,可以从目标串中抽出和括号中的子模式相匹配的部分.例如,假定我们正在检索的模式是一个或多个字母后面跟随一位或多位数字,那么我们可以使用模式/ [a-z] + \ d+/.但是由于假定我们真正关心的是每个匹配尾部的数字,那么如果我们将模式的数字部分放在括号中(/ [a-z] + (\d+)/) ,我们就可以从所检索到的任何匹配中抽取数字了,之后我们会对此进行解析的.代括号的子表达式的另一个用途是,允许我们在同一正则表达式的后面引用前面的子表达式.这是通过在字符串\ 后加一位或多位数字来实现的.数字指的是代括号的子表达式在正则表达式中的位置.例如: \1 引用的是第一个代括号的子表达式. \3 引用的是第三个代括号的子表达式.注意,由于子表达式可以嵌套在其它子表达式中,所以它的位置是被计数的左括号的位置.例如:在下面的正则表达式被指定为\2:/([Jj]ava([Ss]cript)) \sis \s (fun\w*) /对正则表达式中前一子表达式的引用所指定的并不是那个子表达式的模式,而是与那个模式相匹配的文本.这样,引用就不只是帮助你输入正则表达式的重复部分的快捷方式了,它还实施了一条规约,那就是一个字符串各个分离的部分包含的是完全相同的字符.例如:下面的正则表达式匹配的就是位于单引号或双引号之内的所有字符.但是,它要求开始和结束的引号匹配(例如两个都是双引号或者都是单引号): /[' "] [^ ' "]*[' "]/如果要求开始和结束的引号匹配,我们可以使用如下的引用:/( [' "] ) [^ ' "] * \1/\1匹配的是第一个代括号的子表达式所匹配的模式.在这个例子中,它实施了一种规约,那就是开始的引号必须和结束的引号相匹配.注意,如果反斜杠后跟随的数字比代括号的子表达式数多,那么它就会被解析为一个十进制的转义序列,而不是一个引用.你可以坚持使用完整的三个字符来表示转义序列,这们就可以避免混淆了.例如,使用\044,而不是\44.下面是正则表达式的选择、分组和引用字符:字符含义____________________________________________________________________| 选择.匹配的要么是该符号左边的子表达式,要么它右边的子表达式(...) 分组.将几个项目分为一个单元.这个单元可由*、+、?和|等符号使用,而且还可以记住和这个组匹配的字符以供此后引用使用\n 和第n 个分组所匹配的字符相匹配.分组是括号中的子表达式(可能是嵌套的).分组号是从左到右计数的左括号数____________________________________________________________________5.指定匹配的位置我们已经看到了,一个正则表达式中的许多元素才能够匹配字符串的一个字符.例如: \s 匹配的只是一个空白符.还有一些正则表达式的元素匹配的是字符之间宽度为0的空间,而不是实际的字符例如: \b 匹配的是一个词语的边界,也就是处于一个/w字字符和一个\w非字字符之间的边界.像\b 这样的字符并不指定任何一个匹配了的字符串中的字符,它们指定的是匹配所发生的合法位置.有时我们称这些元素为正则表达式的锚.因为它们将模式定位在检索字符串中的一个特定位置.最常用的锚元素是^, 它使模式依赖于字符串的开头,而锚元素$则使模式定位在字符串的末尾.例如:要匹配词"javascript" ,我们可以使用正则表达式/^ javascript $/. 如果我们想检索"java" 这个词自身(不像在"javascript" 中那样作为前缀),那么我们可以使用模式/\s java \s /, 它要求在词语java之前和之后都有空格.但是这样作有两个问题.第一: 如果"java" 出现在一个字符的开头或者是结尾.该模式就不会与之匹配,除非在开头和结尾处有一个空格. 第二: 当这个模式找到一个与之匹配的字符时,它返回的匹配的字符串前端和后端都有空格,这并不是我们想要的.因此,我们使用词语的边界\b 来代替真正的空格符\s 进行匹配. 结果表达式是/\b java \b/.下面是正则表达式的锚字符:字符含义____________________________________________________________________^ 匹配的是字符的开头,在多行检索中,匹配的是一行的开头$ 匹配的是字符的结尾,在多行检索中,匹配的是一行的结尾\b 匹配的是一个词语的边界.简而言之就是位于字符\w 和\w之间的位置(注意:[\b]匹配的是退格符) \B 匹配的是非词语的边界的字符_____________________________________________________________________6.属性有关正则表达式的语法还有最后一个元素,那就是正则表达式的属性,它说明的是高级模式匹配的规则.和其它正则表达式语法不同,属性是在/ 符号之外说明的.即它们不出现在两个斜杠之间,而是位于第二个斜杠之后.javascript 1.2支持两个属性.属性i 说明模式匹配应该是大小写不敏感的.属性g 说明模式匹配应该是全局的.也就是说,应该找出被检索的字符串中所有的匹配.这两种属性联合起来就可以执行一个全局的,大小写不敏感的匹配.例如: 要执行一个大小不敏感的检索以找到词语"java" (或者是"java" 、"JAVA"等) 的第一个具体值,我们可以使用大小不敏感的正则表达式/\b java\b/i .如果要在一个字符串中找到"java" 所有的具体值,我们还可以添加属性g, 即/\b java \b/gi .JS正则表达式大全【3】以下是正则表达式的属性:字符含义_________________________________________i 执行大小写不敏感的匹配g 执行一个全局的匹配,简而言之,就是找到所有的匹配,而不是在找到第一个之后就停止了_________________________________________除属性g 和i 之外,正则表达式就没有其它像属性一样的特性了.如果将构造函数RegExp 的静态属性multiline 设置为true ,那么模式匹配将以多行的模式进行.在这种模式下,锚字符^ 和$匹配的不只是检索字符串的开头和结尾,还匹配检索字符串内部的一行的开头和结尾.例如: 模式/Java$/ 匹配的是"Java",但是并不匹配"Java\nis fun" .如果我们设置了multiline 属性,那么后者也将被匹配:RegExp.multiline = true;在JAVASCRIPT里面判断一个字符串是否是电子邮件的格式:if(formname.email.value!=formname.email.value.match(/^\w +[@]\w +[.][\w.] +$/)){alert("您的电子邮件格式错误!");formname.email.focus();return false;}[RED]function dateVerify(date){var reg = /^(\d{4})(-)(\d{2})\2(\d{2})$/;var r = date.match(reg);if(r==null) return false;var d= new Date(r[1], r[3]-1,r[4]);var newStr=d.getFullYear()+r[2]+(d.getMonth()+1)+r[2]+d.getDate();date=r[1]+r[2]+((r[3]-1)+1)+r[2]+((r[4]-1)+1);return newStr==date;}[/RED]javascript的17种正则表达式"^\\d+$"//非负整数(正整数+ 0)"^[0-9]*[1-9][0-9]*$"//正整数"^((-\\d+)|(0+))$"//非正整数(负整数+ 0)"^-[0-9]*[1-9][0-9]*$"//负整数"^-?\\d+$"//整数"^\\d+(\\.\\d+)?$"//非负浮点数(正浮点数+ 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+)?)|(0+(\\.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+)?$"//浮点数"^[A-Za-z]+$"//由26个英文字母组成的字符串"^[A-Z]+$"//由26个英文字母的大写组成的字符串"^[a-z]+$"//由26个英文字母的小写组成的字符串"^[A-Za-z0-9]+$"//由数字和26个英文字母组成的字符串"^\\w+$"//由数字、26个英文字母或者下划线组成的字符串"^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$"//email地址"^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$"//urlJavaScript中的正则表达式(2)正则表达式对象的属性及方法预定义的正则表达式拥有有以下静态属性:input, multiline, lastMatch, lastParen, leftContext, rightContext和$1到$9。