仅在第一次出现指定字符时拆分字符串

时间:2016-11-25 13:02:16

标签: javascript regex string

我试图在第一次出现“/”字符时拆分字符串。我可以使用split('/')将它拆分成多个元素但是当我尝试使用贪婪的运算符(?)在第一次出现的“/”字符时拆分字符串时,我无法得到想要的字符串..

Javascript代码

var url_string ="http://localhost:8080/myapp.html#/"
var sub_url = url_string.split(/(.+)?/)[1];

当前输出。

http://localhost:8080/myapp.html#/

期望输出..

myapp.html#/

无法理解我做错了什么。请帮助!!

2 个答案:

答案 0 :(得分:3)

您可以使用Location的力量并调整结果。

var url_string = "http://localhost:8080/myapp.html#/"
var url = document.createElement('a');

url.href = url_string;
console.log(url.pathname.slice(1) + url.hash);

答案 1 :(得分:1)

您可以使用服务$location中的AngularJS $location.url()

// given URL http://localhost:8080/myapp.html#/
var url = $location.url();
// => "/myapp.html#/"

...并删除第一个字符。

或者您可以使用Web API URL

var url = new URL('http://localhost:8080/myapp.html#/');
console.log(url.pathname.slice(1) + url.hash);