常用js正则表达式
** js常用正则表达式**
只允许输入数字 1
^\d+$
只允许输入汉字 1
^[\u3400-\u9FFF]+$
整数或者小数 1
^[0-9]+\.{0,1}[0-9]{0,2}$
只能输入零和非零开头的数字 1
^(0|[1-9][0-9]*)$
只能输入有两位小数的正实数 1
^[0-9]+(\.[0-9]{2})?$
只能输入非零的正整数 1
^\+?[1-9][0-9]*$
只能输入非零的负整数 1
^\-[1-9][]0-9"*$
只能输入字母 1
^[A-Za-z]+$
只能输入字母或数字 1
^[A-Za-z0-9]+$
只能输入汉字 1
^[\u3400-\u9FFF]+$
只允许输入字母、数字、下划线 1
^\w+$
只允许输入字母、数字、下划线,并且以字母开头 1
^[A-Za-z]\w*$
常用密码校验
(//字母开头,6到18位字符)1
^[a-zA-Z]\w{5,17}$
Email邮箱地址校验 1
^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
匹配非空字符 1
^s*|s*$
匹配国内座机号码 1
\d{3}-?\d{8}|\d{4}-?\d{7}
匹配国内手机号码 1
^1\d{10}$
匹配URL地址 1
[a-zA-z]+://[^\s]*
匹配ip地址 1
\d+.\d+.\d+.\d+
验证身份证号(15或18位数字) 1
^\d{15}|\d{18}$
匹配双字节字符(包括汉字在内) 1
[^\x00-\xff]
匹配空行 1
\n[\s| ]*\r
匹配html标签:1
<(.*)>(.*)<\/(.*)>|<(.*)\/>
正则的应用
1.去掉字符串中的首尾的空格
1
2
3
String.prototype.trim = function(){
return this.replace(/(^\s*)|(\s*$)/g, "")
}
2.利用正则表达式限制网页表单里的文本框输入内容:
1
2
//用正则表达式限制只能输入中文
onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"
1
2
//用正则表达式限制只能输入全角字符
onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"
1
2
//用正则表达式限制只能输入数字
onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
1
2
//用正则表达式限制只能输入字母、数字或下划线
onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\W]/g,''))"
3.js获取url地址中的参数
1
2
3
4
5
6
7
8
9
10
11
function getAddressURLParam(paramName){
//构造一个含有目标参数的正则表达式的对象
var reg = new RegExp("(^|&)" + paramName + "=([^&]*)(&|$)");
//匹配目标参数
var url = window.location.search.substr(1).match(reg);
//返回参数值
if(url != null){
return unescape(url[2]);
}
return null;
}