【发布时间】:2014-08-30 21:10:02
【问题描述】:
我有以下函数(不是我写的)来提取一个 URL 参数值:
function getURLParameter(name) {
return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search) || [, ""])[1].replace(/\+/g, '%20')) || null
}
我几乎没有使用正则表达式的经验。此代码当前对参数名称进行区分大小写的搜索。我想让 RegExp 对参数名称进行不区分大小写的搜索。有人可以告诉我如何改变它来实现它吗?
【问题讨论】:
-
也许你应该从 extracting all of the parameters 开始,然后处理不区分大小写的问题——也许调用
map()来迭代每个参数。 -
我可能错了,但这看起来已经不区分大小写了......
-
查看作为
RegExp的第二个参数的正则表达式修饰符。您可以将'i'作为第二个参数提供给new RegExp以执行不区分大小写的搜索。 -
啊,不知道你可以在
new RegEx()电话中做到这一点。酷。
标签: javascript regex