0

我有一个像这样的字符串“/blog/post1/”

如何从 Jquery 中的这个字符串中获取“post1”?

我试过这个,但它返回空。

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

4 回答 4

1

使用正则表达式,例如:

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

编辑

这是RegExp,不是Regex,我的错。

于 2012-06-28T15:25:30.997 回答
1

使用 JavaScriptsplit函数。更简单的解决方案。

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/

于 2012-06-28T15:25:56.773 回答
1

如果格式始终相同,您可以使用:

var str = "/blog/post1/";
var piece = str.split('/')[2];​ // returns 'post1'
于 2012-06-28T15:26:06.617 回答
1

你可以这样做。

现场演示

var str = "/blog/post1/";
arr = str.split('/');
var res = arr[arr.length-2];
alert(​res)​;
于 2012-06-28T15:33:28.143 回答