js正则表达式【原】
js正则表达式
我的自测样例
<HTML>
<HEAD>
<meta http-equiv="content-Type" content="text/html;charset=gbk" />
<meta name="author" content="king" />
<TITLE>js正则测试</TITLE>
<script type="text/javascript">
function parsePattern(str) {
var reg = new RegExp("^a\\d{2}z$"); //构造一个正则表达式对象,只能输入2位数字,且以a开头,以z结尾,形如a18z
var result = str.match(reg);//用字符串去匹配与此同时表达式
if (result != null) {//如果匹配上了
return result[0];//取匹配值,result[0]代表所有, result[1]代表从左往右第一个小括号,依次类推
} else {
return null;
}
}
var result = parsePattern("a18z") ;
console.log(result);//输出a18z
</script>
</HEAD>
<BODY>
js正则测试
<br />
<a href="http://www.cnblogs.com/zfc2201/archive/2012/12/18/2824107.html" target="_blank">js常用正则表达式</a>
<br />
<a href="http://www.w3school.com.cn/js/js_obj_regexp.asp" target="_blank">w3school</a>
</BODY>
</HTML>
js获取请求地址?后的参数和值
//获取url中的参数 function getUrlParam(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象 //alert("window.location.search="+window.location.search); var r = window.location.search.substr(1).match(reg); //匹配目标参数 if (r != null){ //alert("find "+name+" = "+decodeURI(r[2])); return unescape(r[2]); } return null; //返回参数值 }
到2017/01/19,本人还是无法理解([^&]*)为何能匹配到=后面的值,于是换成了
//获取url中的参数 function getUrlParam(name) { //http://localhost:8080/kingtool/index2.html?id0=abc&id1=def var reg = new RegExp("(^|&)" + name + "=(.*)(&|$)"); //构造一个含有目标参数的正则表达式对象 var r = window.location.search.substr(1).match(reg); //匹配目标参数 if (r != null){ //alert("find "+name+" = "+decodeURI(r[2])); return decodeURI(r[2]); } return null; //返回参数值 }
感觉空虚寂寞,只是因为你无所关注,无处付出。

浙公网安备 33010602011771号