Как обернуть промежуток вокруг 'PM' и 'AM' в строке? - PullRequest
3 голосов
/ 05 мая 2011

Я хочу обернуть промежуток вокруг AM или PM в строку времени.Например:

<span class="time">between 10:00AM and 14:00PM</span>

становится:

<span class="time">between 10:00<span class="suffix am">AM</span> and 14:00<span class="suffix pm">PM</span></span>

Любая подсказка о том, как получить метод замены, чтобы сделать это?

Ответы [ 2 ]

5 голосов
/ 05 мая 2011

Я думаю, что простая замена () сделает это:

$('.time').each(function() {
  var newMarkup = $(this).html().replace(/AM/g, '<span class="suffix am">AM</span>')
                                .replace(/PM/g, '<span class="suffix pm">PM</span>');

  $(this).html(newMarkup);
});

Вдохновлен: Самый быстрый метод для замены всех вхождений символа в строке

2 голосов
/ 05 мая 2011

Не могли бы вы использовать заглавные буквы am / pm классов?В таком случае это будет решение:

$('.time').html(function(i, v) {
    return v.replace(/(AM|PM)/g, '<span class="suffix $1">$1</span>');
});

Демонстрационная версия: http://jsfiddle.net/pVWh6/

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