删除评论主播#和所有内容?搜索但离开?其余的

时间:2010-12-07 07:20:51

标签: javascript regex string replace

您好我写了一个javascript来检查...

document.location.search.substring(1,document.location.search.length)

但我注意到如果有一个评论锚,它看起来像这样......

www.sample.com/sample.html#commentxxx?somethinghereIneed

如何删除#和所有问题(保留)

所以我现在就有这个......

www.sample.com/sample.html?somethinghereIneed

正则表达式可以去哪里“????”是否正确?
并且重要 ...
如果找不到#anchor它什么都不做?别管它了,正确吗?

var removeAnchortoMark = document.location.replace('????', '');

剥离#及其后的所有内容......那会是什么?

2 个答案:

答案 0 :(得分:3)

尝试:

var removeAnchortoMark = document.location.replace('#[^?]*', '');

答案 1 :(得分:1)

//gets the url variables and return them as an associative array.
function getUrlVars(){
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for(var i = 0; i < hashes.length; i++){
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
    return vars;
}

这将获得所有内容?所以说你的网址是www.stackoverflow.com?this=that&mine=yours。

然后这将返回这样的数组。

vars['this'] = 'that';
vars['mine'] = 'yours';