我有href属性的链接,如下所示:
http://company.com/inetucm/groups/public/@enterprise/documents/pagecontent/s_014654.html
我想编写一个jquery函数,只将 s_014654 设置为一个变量,我稍后会用它来创建一个不同的url结构。
有人可以帮我解释一下这种语法。
答案 0 :(得分: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的:强>
var arr = $('a').map(function(){
return this.href.split('/').pop().match(/^(.+)\.html$/)[1];
}).get();
这将返回数组中的所有值。
答案 1 :(得分: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”。