2016-06-20 72 views
2

我有它返回稱爲「名」對我來說是URL參數此javascript函數:返回只是一個URL參數的部分

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

它運作良好,如果我的參數是這樣的:名稱=大衛%20James然後返回David James,但我只希望它返回第一個名字「David」。我不知道如何做到這一點。我需要告訴它只返回第一個名字,所以一切都高達%20。

任何幫助將不勝感激。謝謝。

回答

3

可以使用:

=([^%]*) 

第一(只)匹配組是所希望的部分, 「大衛」,在這種情況下。

  • =匹配=字面上

  • 然後所捕獲的組([^%]*)得到高達下一個%

Demo

+1

是的,真棒,這工作得很好。謝謝 :) – Julz

0

可以使用.split(」「)函數作爲部井

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