2012-12-28 64 views
0

我正在尝试使点击导航。该网站的jquery网址正则表达式

结构简单:

site.com/page_2/ 
site.com/page_3/ 
... 
site.com/page_n/ 

如何获得页码的网址是什么?

回答

3

像这样的东西应该工作:

> 'site.com/page_123/'.match(/page_(\d+)/)[1]; 
"123" 
1
"site.com/page_123/".match(/(?:page_)(\d+)/)[1]; 
+0

':'是不是真的需要。 '/ page _(\ d +)/'就够了。 – VisioN

0

或者当你可以串以及为什么事情正则表达式复杂:

"site.com/page_2/".substring("mysite.com/page_".length, name.lastIndexOf("/")); 
0
var s = window.location.href; 
var x = s.split("/"); 
for(var i = 0; i < x.length; i++) { 
    if(i==x.length-2) { 
     var c = x[i].match(/page_(\d+)/)[1]; 
    } 
} 

自动获得页码;) Working Fiddle

+0

希望它有帮助! :) –

+0

为什么在一个已知的索引中只使用一次循环?为什么不只是'x [x.length - 2] .match(/ page _(\ d +)/)[1];'? – JJJ

+0

噢,这是重点,但仍然给他想要的东西! @Juhana谢谢:) –

0

还有一个非正则表达式的解决方案:

parseInt("site.com/page_123/".split("page_").pop(), 10); 
0

发现这里的小提琴:http://jsfiddle.net/N2WRS/

var url  = "http://www.site.com/page_2/"; // window.location 
var nurl  = url.substr(0, url.lastIndexOf('/')); 
var finalUrl = nurl.substr(nurl.lastIndexOf('/')+1); 

alert(finalUrl); // <---this will get you the page_2