想要在某个单词之后拆分一个字符串?

时间:2017-06-01 13:19:46

标签: javascript jquery html attributes

这是我的代码:

var url="https://muijal-ip-dev-ed.my.salesforce.com/apexpages/setup/viewApexPage.apexp?id=066415642TPaE";

在这个字符串中我只需要

url="https://muijal-ip-dev-ed.my.salesforce.com/"

我需要字符串直到" com /"应该删除其余的字符串。

5 个答案:

答案 0 :(得分:4)

在现代浏览器中,您可以使用URL()

var url=new URL("https://muijal-ip-dev-ed.my.salesforce.com/apexpages/setup/viewApexPage.apexp?id=066415642TPaE");

console.log(url.origin)

对于不受支持的浏览器use regex

答案 1 :(得分:1)

使用javascript split

url = url.split(".com");
url = url[0] + ".com";

如果Url格式正确,那么应该留下想要的字符串。

答案 2 :(得分:1)

您可以像这样使用locate然后substr

var url = url.substr(0, url.locate(".com"));

locate返回搜索到的字符串的索引,然后substr将从开头剪切到该索引〜

答案 3 :(得分:1)

子串函数应该很好地处理它:

function clipUrl(str, to, include) {
  if (include === void 0) {
    include = false;
  }
  return str.substr(0, str.indexOf(to) + (include ? to.length : 0));
}
console.log(clipUrl("https://muijal-ip-dev-ed.my.salesforce.com/apexpages/setup/viewApexPage.apexp?id=066415642TPaE", ".com", true));

答案 4 :(得分:1)

如果URL API(由another answer建议)不可用,您可以可靠地使用HTMLAnchorElement界面的属性作为解决方法,如果您想避免使用常规表达式。



var a = document.createElement('a');
a.href = 'https://muijal-ip-dev-ed.my.salesforce.com/apexpages/setup/viewApexPage.apexp?id=066415642TPaE';
console.log(a.protocol + '//' + a.hostname);