【问题标题】:Returning just a section of a url parameter仅返回 url 参数的一部分
【发布时间】:2016-10-21 05:26:48
【问题描述】:

我有这个 javascript 函数,它为我返回一个名为 'name' 的 url 参数:

function getURLParameter(name) {
      return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.search) || [null, ''])[1].replace(/\+/g, '%20')) || null;
    }

效果很好,如果我的参数是这样的:name=David%20James,那么它会返回 David James,但我只希望它返回名字“David”。我不知道该怎么做。我需要告诉它只返回名字,所以一切都在 %20 以内。

任何帮助将不胜感激。谢谢。

【问题讨论】:

    标签: javascript regex url


    【解决方案1】:

    你可以使用:

    =([^%]*)
    

    在这种情况下,第一个(唯一的)匹配组是所需的部分,“David”。

    • = 匹配 = 字面意思

    • 然后被捕获的组([^%]*) 获取到下一个% 的部分

    Demo

    【讨论】:

      【解决方案2】:

      你也可以使用 .split(" ") 函数

      function getURLParameter(name) {
          String[] x = name.split(" ");
          String firstname = x[0];
                return firstname ;
                }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-07-08
        • 2014-01-20
        • 1970-01-01
        • 2015-08-12
        • 2021-07-01
        相关资源
        最近更新 更多