2011-09-07 14 views
8

Mam ten linkJak uzyskać numer z tej url w javascript regex

http://nikerunning.nike.com/nikeplus/v2/services/app/run_list.jsp?userID=1413795052&startIndex=0&endIndex=-1&filterBy=all 

Chcę sprowadzić 1413795052 numer za pomocą wyrażenia regularnego w JavaScript, w jaki sposób można to osiągnąć?

Odpowiedz

13
var url = 'http://nikerunning.nike.com/nikeplus/v2/services/app/run_list.jsp?userID=1413795052&startIndex=0&endIndex=-1&filterBy=all'; 
var match = url.match(/userID=(\d+)/) 
if (match) { 
    var userID = match[1]; 
} 

To dopasowuje wartość parametru userID w adresie URL.

/userID=(\d+)/ jest literałem regex. Jak to działa:

  • / są ograniczniki, jak " dla ciągów
  • userID= wyszukuje ciąg userID= w url
  • (\d+) wyszukiwań dla jednego lub więcej cyfr po przecinku i oddaje go (zwraca go)
+0

Thanks to działało .. też możesz mi wyjaśnić, co robi '/ identyfikator użytkownika = (\ d +)/'zrobić? – abi1964

+0

Tak, zaktualizowałem odpowiedź: – arnaud576875

+0

W takim razie otrzymuję tylko numer "1413795052", ale nie "userID = 1413795052"? – abi1964

1

spróbuj:

var input = "http://nikerunning.nike.com/nikeplus/v2/services/app/run_list.jsp?userID=1413795052&startIndex=0&endIndex=-1&filterBy=all"; 

var id = parseInt(input.match(/userID=(\d+)/)[1]); 
0

ten dostanie wszystkie numery w ciągu kwerendy:

window.location.search.match(/[0-9]+/); 
1

spróbować go tutaj w stackoverflow:

window.location.pathname.match(/questions\/(\d+)/)[1]

Powiązane problemy