使用正则表达式从url中提取参数值
这应该是非常简单的(当你知道答案的时候)。 从这个问题
我想尝试发布解决方案。 我的问题是:
如何使用JavaScript正则表达式获取给定URL的参数值?
我有:
http://www.youtube.com/watch?v=Ahg6qcgoay4
我需要:
Ahg6qcgoay4
我试过了:
http://www.youtube.com/watch?v=(w{11})
但是:我吸...
你几乎拥有它,只需要逃避特殊的正则表达式字符:
regex = /http://www.youtube.com/watch?v=([w-]{11})/;
url = 'http://www.youtube.com/watch?v=Ahg6qcgoay4';
id = url.match(regex)[1]; // id = 'Ahg6qcgoay4'
编辑:由soupagain修复正则表达式。
你为什么不把字符串拆分
网址示例
var url = "http://www.youtube.com/watch?p=DB852818BF378DAC&v=1q-k-uN73Gk"
你可以做一个分裂
var params = url.split("?")[1].split("&");
您将获得带有参数的字符串数组作为名称值对,并使用“=”作为分隔符。
v是查询参数,从技术上讲,您需要考虑ala案例:http://www.youtube.com/watch?p=DB852818BF378DAC&v=1q-k-uN73Gk
在.NET中,我会建议使用System.Web.HttpUtility.ParseQueryString
HttpUtility.ParseQueryString(url)["v"];
而且你甚至不需要检查密钥,因为如果密钥不在集合中,它将返回null。
链接地址: http://www.djcxy.com/p/28919.html上一篇: Extract parameter value from url using regular expressions
下一篇: Does PHP have structs or enums and if not what is the best implementation for them?