Регулярное выражение: множественные вхождения слова, заменить только последнее вхождение - PullRequest
0 голосов
/ 05 марта 2012

У меня есть такой URL-адрес:

http://site.com/galleries/galleryname/imageID123/lightbox/

и использование сценария для замены URL-адреса лайтбокса ничем (когда оверлей лайтбокса закрыт):

document.URL.replace('lightbox/', '')

Все становится грязнокогда у пользователя есть галерея, также называемая «лайтбокс», то URL-адрес:

http://site.com/galleries/lightbox/imageID123/lightbox/

Мне нужно убедиться, что docment.URL.replace заменит только последнее вхождение слова.

1 Ответ

4 голосов
/ 05 марта 2012

попробуйте это

document.URL.replace(/lightbox\/$/, '')

Я говорю как синтаксический анализатор:

document.URL.replace('lightbox/', '')

Хорошо, всякий раз, когда я нахожу lightbox/, я заменяю его на "empty" но ждать !есть больше чем 1.так что я сделаю это.

но подождите!поскольку вы не поставили флаг g - я сделаю это только для первого.(если вы поставили флаг g, он заменит ВСЕ вхождения!)

в любом случае -

мы не хотим этого.

так как же мы скажем ему только последнее??

хорошо использовать знак $.которые представляют конец строки.

, поэтому я хочу, чтобы вы заменили только лайтбокс, который имеет / после, а / - КОНЕЦ СЛОВА.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...