Как заменить последнее вхождение символов в строке с помощью javascript

$("div[class='foo']").click(function(e) {
    e.preventDefault();
    $(this).hide();
    $('img.loading', this).show();
});
30
задан Henrik Stenbæk 30 September 2010 в 09:50
поделиться

1 ответ

foo.replace(/,([^,]*)$/, ' and $1')

используйте якорь $ ( конец строки ), чтобы указать свою позицию, и найдите шаблон справа от индекса запятой, который не включает дальнейших запятых.

Редактировать:

Вышесказанное работает в точности для определенных требований (хотя строка замены произвольно свободна), но на основе критики из комментариев ниже лучше отражает дух первоначального требования.

console.log( 
   'test1, test2, test3'.replace(/,\s([^,]+)$/, ' and $1') 
)
50
ответ дан 27 November 2019 в 23:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: