indexOf" /"在一个字符串中

时间:2015-03-01 23:11:57

标签: javascript xpages

我有一个如下所示的HotSpot网址:

http://192.168.2.251/XPages/Website/wfswebsite.nsf/xpIndex.xsp?page=ccProducts.xsp&product=ccWFAXPages.xsp

我试图从URL中提取192.168.2.251 indexOf返回/的第一次出现。我无法在192上编制索引,因为在现实生活中它可能是IP地址或实际域名。

2 个答案:

答案 0 :(得分:1)

假设你能够使用一个函数,并且不受任何理由indexOf()逼近,我建议:

function getDomain(url) {
  // create a temporary <a> element:
  var a = document.createElement('a');
  // set its `href` property (not attribute) to
  // the given URL:
  a.href = url;

  // return the hostname of the created-<a> element:
  return a.hostname;
}

var url = "http://192.168.2.251/XPages/Website/wfswebsite.nsf/xpIndex.xsp?page=ccProducts.xsp&product=ccWFAXPages.xsp",
  hostname = getDomain(url);

document.getElementById('urlString').textContent = url;
document.getElementById('hostname').textContent = hostname;
ul, li {
  margin: 0;
  padding: 0;
}

li {
  max-width: 90%;
}
li::before {
  text-indent: 1em;
  content: attr(id)": ";
  display: block;
  color: #696;
}
li:empty {
  display: none;
}
<ul>
  <li id="urlString"></li>
  <li id="hostname"></li>
</ul>

参考文献:

答案 1 :(得分:1)

上面的建议让我找到了一些替代解决方案,事实上这段代码完全符合我的要求:

var thisURL = context.getUrl();
var host:String = thisURL.getHost();

因为thisURL是一个xspURL,getHost在这种情况下提取192.168.2.251并返回我正在寻找的内容。