2011-09-25 81 views
2

替换字符和数字我有一个字符串,它看起来像 - /celebrity.html#portfolios/jennifer-aniston-2006#img10我怎么能在同一时间

我想删除#img10(也可以是#img6;任意数量真的)。

我已经使用这个代码

var docLoc = document.location.href.replace("#img", ''); 
var docLoc2= docLoc.replace(/[0-9]+/,''); 

当我登录docLoc2我得到/celebrity.html#portfolios/jennifer-aniston-

我真的想结合这两个替换功能,因此它所有的一次,因此将只删除# img10,我也写了这个:

var docLoc = document.location.href.replace("#img"+/[0-9]+/, ''); 

这不起作用(我觉得语法错误)。

谁能给我提供了一个解决方案?任何答复不胜感激。

回答

4

使用

var docLoc = document.location.href.replace(/#img[0-9]+$/, ''); 

演示在http://refiddle.com/1bq

更新:加入$在他表达的结束只有符合#img??如果是在字符串的结尾,所建议ŠimeVidas在评论中..


.replaceMDN Docs可与字符串或正则表达式。您试图既与错误的语法结合起来,你注意到自己..

+0

也许'/#IMG [0-9] + $ /',以确保它是在串...(如果这是一个要求) –

+0

@森达,好观察的结束。 –

+0

非常感谢这正是我要找的:) –

0

你的正则表达式可能是这个

#img\d*