Как я могу заменить символы и цифры одновременно - PullRequest
2 голосов
/ 25 сентября 2011

У меня есть строка, которая выглядит как - /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-

Я действительно хочу объединить эти две функции замены, чтобы он делал все сразу, и поэтому будет удалять толькотакже написали это:

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

Это не работает (я думаю, что синтаксис неправильный).

Кто-нибудь может дать мне решение?Любые ответы приветствуются.

Ответы [ 2 ]

4 голосов
/ 25 сентября 2011

Использование

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

Демонстрация при http://refiddle.com/1bq

обновление: добавил $ в конце выражения, чтобы соответствовать только #img??если он находится в конце строки, как предложено Шиме Видасом в комментариях ..


.replace Документы MDN работают либо сстрока или регулярное выражение.Вы пытались объединить оба с неправильным синтаксисом, как вы сами отметили ..

0 голосов
/ 25 сентября 2011

Ваше регулярное выражение может быть этим

#img\d*
...