Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果存在X个段,则根据删除url段_Javascript_Regex - Fatal编程技术网

Javascript 如果存在X个段,则根据删除url段

Javascript 如果存在X个段,则根据删除url段,javascript,regex,Javascript,Regex,有人能帮我用一个正则表达式来帮我做这件事吗 我有一个网址:http://www.site.com/foo/bar 当用户单击某个链接时,它会将其附加到url,使其看起来像这样 http://www.site.com/foo/bar/link1 http://www.site.com/foo/bar/link1/link2 现在有一个棘手的部分,当点击第二个链接时,它会像这样不断地附加到url http://www.site.com/foo/bar/link1 http://www.site

有人能帮我用一个正则表达式来帮我做这件事吗

我有一个网址:
http://www.site.com/foo/bar

当用户单击某个链接时,它会将其附加到url,使其看起来像这样

http://www.site.com/foo/bar/link1
http://www.site.com/foo/bar/link1/link2
现在有一个棘手的部分,当点击第二个链接时,它会像这样不断地附加到url

http://www.site.com/foo/bar/link1
http://www.site.com/foo/bar/link1/link2
我想让link2取代link1,使其成为
http://www.site.com/foo/bar/link2

我想指出,链接像这样附加的唯一原因是,我使用此表达式从链接中删除
“#”
,并将其替换为
”/“

location.assign(location.href.replace(/\/?#/g, "/"))
如果没有#,浏览器将不知道如何替换哈希标记,但这会导致当前设置出现问题

否则,链接将看起来像
http://www.site.com/foo/bar#link1
我的设置中不存在witch

我正在使用
htaccess
替换
page.php?type=foo&user=bar&page=link1
http://www.site.com/foo/bar/link1

是的,我的问题是如何用
/link2
删除
/link1
,但如果
/link1
不存在,则追加link2

我想保持代码尽可能动态,因为链接名称可能会更改

编辑: 我的代码


它必须是基于正则表达式的解决方案吗?不,但这是我的想法,它应该是这样做的…我的解决方案有问题吗?不,我只是好奇,我有一个散列更改事件,当url更改为通过ajax加载到我的内容时,它会继续检测,这个解决方案还能让我对我的链接有同样的ajax感觉吗