2012-06-28 84 views
0

我有這樣的字符串「/ blog/post1 /」jquery提取url

我怎麼能從這個字符串在Jquery的「post1」?

我試過但它返回空。

var post_slug = $(this)[0].pathname.substring($(this)[0].pathname.lastIndexOf("/")).replace(/^\//, ""); 
+0

['split'(http://www.w3schools.com/jsref/jsref_split.asp)吧! – sp00m

回答

1

如果格式總是同樣可以使用:

var str = "/blog/post1/"; 
var piece = str.split('/')[2];​ // returns 'post1' 
1

使用正規表示法,是這樣的:

new RegExp("/blog/(\S+)/").exec("/blog/post1/"); 
["/blog/post1/", "post1"] 

編輯

這是正則表達式,不正則表達式,是我不好。

1

使用JavaScript split函數。更簡單的解決方案。

var url = "/blog/post1/"; 
var splitUrl = url.split("/"); 

// assuming known URL structure so always same index 
var post_slug = splitUrl[splitUrl.length -2]; 

工作小提琴:http://jsfiddle.net/Rsrmk/

1

你可以不喜歡這樣。

Live Demo

var str = "/blog/post1/"; 
arr = str.split('/'); 
var res = arr[arr.length-2]; 
alert(​res)​; 
+0

這很有趣您的答案看起來幾乎與我的相同,提前7分鐘發佈;) –

+0

我們遵循相同的路線:) – Adil

+0

是的 - 只是給你一個難的時間:) –