我需要从跨度中删除网址的最后一部分..
我有
<span st_url="http://localhost:8888/careers/php-web-developer-2"
st_title="PHP Web Developer 2" class="st_facebook_large" displaytext="facebook"
st_processed="yes"></span></span>
我需要接受st_url
并从中移除php-web-developer-2
,因此它只是http://localhost:8888/careers/
。
但我不知道该怎么做。 php-web-developer-2
并不总是那样,但它不会有任何/
。它始终是-
分隔的字符串。
任何帮助!! ??
答案 0 :(得分:16)
就这么简单:
var to = url.lastIndexOf('/');
to = to == -1 ? url.length : to + 1;
url = url.substring(0, to);
答案 1 :(得分:10)
$('span').attr('st_url', function(i, url) {
var str = url.substr(url.lastIndexOf('/') + 1) + '$';
return url.replace( new RegExp(str), '' );
});
<强> DEMO 强>
答案 2 :(得分:10)
使用它。
$('span').attr('st_url', function(i, url) {
var to = url.lastIndexOf('/') +1;
x = url.substring(0,to);
alert(x);
})
您可以看到Demo
答案 3 :(得分:3)
您可以使用正则表达式来解析“最后一段网址”:
var url="http://localhost:8888/careers/php-web-developer";
var baseurl=url.replace(
new RegExp("(.*/)[^/]+$"),
"$1") );
RegExp基本上说:“匹配任何内容,然后是斜杠,然后是所有非斜杠,直到字符串结尾”。
replace函数接受匹配的部分,并将其替换为字符串的“nothing,then a slash”部分。
RegexBuddy提供了大量关于这一切的信息。
答案 4 :(得分:2)
您可以在此处查看:http://jsfiddle.net/xKxLR/
var url = "http://localhost:8888/careers/php-web-developer-2";
var regex = new RegExp('/[^/]*$');
console.log(url.replace(regex, '/'));
答案 5 :(得分:0)
首先,您需要解析标记。接下来尝试提取作为您的URL的st_url值。然后使用提取的url的最后一个字符循环并省略它们,直到看到'/'。这就是你应该如何提取你想要的东西。记住这一点并尝试编写代码。
答案 6 :(得分:0)
这是一个稍微简单的方法:
url = url.slice(0, url.lastIndexOf('/'));