我有一个字符串path1/path2
我需要获取path1
和path2
的值。
我该怎么做?
那么从这样的字符串http://www.somesite.com/#path1/path2
获取相同内容呢?
由于
答案 0 :(得分:16)
纯JavaScript String对象具有split
方法。
'path1/path2'.split('/')
'http://www.somesite.com/#path1/path2'.split('#').pop().split('/')
-> ['path1', 'path2']
然而,对于第二种情况,通过字符串或正则表达式黑客攻击进行自己的URL解析通常不是一个好主意。网址比您想象的要复杂得多。如果您有location
个对象或<a>
元素,则可以使用protocol
,host
,port
可靠地从中挑选网址的各个部分,pathname
,search
和hash
属性。
答案 1 :(得分:2)
var path1 = "path1/path2".split('/')[0];
var path2 = "path1/path2".split('/')[1];
对于第二个,如果你从你的网址获得它,你可以这样做。
var hash = window.location.hash;
var path1 = hash.split('#')[1].split('/')[0];
var path2 = hash.split('#')[1].split('/')[1];
答案 2 :(得分:1)
var url = 'http://www.somesite.com/#path1/path2';
var arr = /#(.*)/g.exec(url);
alert(arr[1].split('/'));
答案 3 :(得分:1)
我认为你不需要使用jQuery,Javascripts普通的Split()方法可以帮助你。
此外,对于你的第二个字符串,如果你正在处理URL,你可以查看Location对象,因为这可以访问端口,主机等。
答案 4 :(得分:0)
您可以使用javascript 'path1/path2'.split('/')
作为示例。给你一个数组,其中0是path1,1是path2。
无需使用jquery