1

我有如下所示的 href 属性链接:

http://company.com/inetucm/groups/public/@enterprise/documents/pagecontent/s_014654.html

我想编写一个 jquery 函数,将s_014654设置为一个变量,稍后我将使用它来创建不同的 url 结构。

有人可以帮我解决这个语法。

4

2 回答 2

3
var url = ....;
var arr = url.split('/');
var value = arr.pop().match(/^(.+)\.html$/)[1];
alert(value); // "s_014654"

现场演示


更新:(基于评论)

<a href="http://company.com/inetucm/groups/public/@enterprise/documents/pagecontent/s_014654.html" />
<a href="http://company.com/inetucm/groups/public/@enterprise/documents/pagecontent/AAAAAAAA.html" />
<a href="http://company.com/inetucm/groups/public/@enterprise/documents/pagecontent/BBB.html" />    
<a href="http://company.com/inetucm/groups/public/@enterprise/documents/pagecontent/fdskl489j.html" />

jQuery: ​</p>

var arr = $('a').map(function(){ 
    return this.href.split('/').pop().match(/^(.+)\.html$/)[1]; 
}).get();

这将返回数组中的所有值。

现场演示

于 2012-06-06T22:30:23.213 回答
2

像这样的东西:

var url = "http://company.com/inetucm/groups/public/@enterprise/documents/pagecontent/s_014654.html";

var value = url.match(/([^/]+)\.html$/)[1];

感谢 gdoron 用我自己的正则表达式更新的小提琴:http: //jsfiddle.net/Fjp8E/2/

该模式([^/]+)\.html$查找一个或多个非斜线字符,该字符后跟在字符串末尾的“.html”。

于 2012-06-06T22:34:07.680 回答