Прежде всего, я искал ответ для своего запроса и не смог найти ответ, использующий функцию replace ().
В следующей строке Strada Genova 204, 10024 Moncalieri Мне нужно заменить запятую и строку перед ней на null, поэтому результат будет просто 10024 Moncalieri
Я пытался $('.class-name').replace(/[^\,]*,(.*)/, "") и не работал.Несколько раз меняли часть регулярных выражений, и ничего не получалось.
$('.class-name').replace(/[^\,]*,(.*)/, "")
Попробуйте это:
var str="Strada Genova 204, 10024 Moncalieri"; console.log(str.replace(/[^,]+,(\s+)?(.*)/g,"$2"));
[^,]+ Все, кроме ,, затем ,, затем (\s+)?, если есть какие-либо пробелы и, наконец, захваченная часть (.*)
[^,]+
,
(\s+)?
(.*)
Вот решение для добавления нового фильтрованного текста в элемент HTML с именем класса filtered
filtered
Примечание: Обязательно загрузите jQuery из локально или из CDN .
HTML
<p class="class-name">Strada Genova 204, 10024 Moncalieri</p> <p class="filtered"></p>
Javascript
$('.filtered').append($('.class-name').text().replace(/[\w\s]*,?\s?/, ""));
JS Fiddle => https://jsfiddle.net/sam1205/gqspwd0a/136/
Вы также можете использовать split(',') и получить последний элемент в массиве.
split(',')
Примерно так:
Пример кодового пера