正则表达式提取url代码解读

正则表达式提取url

正则部分:

1、"(^|&)":从头开始匹配‘&’

2、"=([^&]*)(&|$)":=([^&]*)就是匹配=后面零个或多个不是&的字符,直至碰到第一个&为止,(&|$)意思就是匹配最后一个&,在正则表达式中,增加一个()代表着匹配数组中增加一个值

3、"i":即ignore,忽略大小写

其余部分:

1、window.location.search:取url中“?”后面的值,包括"?",取到的值为:?id=6&name=xiaoha&sex=male

2、window.location.search.substr(1):截取第一个字符后面的字符串,即去掉"?",取到的值为:id=6&name=xiaoha&sex=male

PS:substr()函数的使用:stringObject.substr(start,length):start必需,表开始截取的位置;length可选,表截取长度

3、match(reg):匹配正则,匹配后数组中应包含4个值. 在getUrlParams("id")函数中,此时 r 获取到的数组应该是 ["id=6&", "", "id", "&"] ;在getUrlParams("name")函数中,此时 r 获取到的数组应该是 ["&name=xiaoha&", "&", "name", "&"]

PS:match的使用:stringObject.match(regexp),如果没有找到任何匹配的文本, match() 将返回 null。否则,它将返回一个数组,其中存放了与它找到的匹配文本有关的信息。该数组的第 0 个元素存放的是匹配文本,而其余的元素存放的是与正则表达式的子表达式匹配的文本。上面例子中正则表达式的子表达式为:(^|&)、([^&]*)、(&|$),所以匹配结果是含有四个元素的数组。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容