1.中括号里加上尖号是“非”的意思
非字母的写法 [^a-zA-Z]
2. 获取url请求中参数的值。
params.param=params.param.replace(/([^?&=]+)=([^?&=]*)/g,function (ars, a, b) {
if(/[\u4e00-\u9fa5]+/g.test(b))b=encodeURI(b)//如果是中文 转码
return a+"="+b;
})其中,//g内的是正则,中括号中的上尖号代表非,[^],所以[^?&=]代表除了?&=之外的任意字符,[^?&=]+代表:‘至少一个除了?&=之外的任意字符’。等号=右边[^?&=]*代表0或者多个‘除了?&=之外的任意字符’
/([^?&=]+)=([^?&=]*)/g所以,下面这个url请求,匹配的结果是: roleName=测试角色名 、roleId=331 、 roleDesc=测试描述 http://XXXXXX/editRole?roleName=测试角色名&roleId=331&roleDesc=测试描述&callback=__jp27
本文介绍了一种通过正则表达式处理URL中的参数并进行编码的方法。重点在于如何使用正则表达式匹配URL参数,并对包含中文的参数值进行编码处理。
2201

被折叠的 条评论
为什么被折叠?



