Подсветка номеров в номере телефона - PullRequest
1 голос
/ 27 октября 2011

Эта функция подсвечивает цифры.

var hightlightPhoneNumbers = function(phoneNumber, hNumbers) {
  var splitPhoneNumber = phoneNumber.split(hNumbers);
  var result = '';

  if (splitPhoneNumber.length > 1) {
    for (var i = 0; i < splitPhoneNumber.length - 1; i++) {
      result += splitPhoneNumber[i] + '<b>' + hNumbers + '</b>';
    }
    return result + splitPhoneNumber[splitPhoneNumber.length - 1];
  }
  return phoneNumber;
};

И мы можем использовать его как hightlightPhoneNumbers('+123456789','123').

Но у нас есть небольшая проблема. Что делать, если номер телефона выглядит как +1 234-567-89? Функция Ofcourse не работает правильно. Как мы можем это исправить?

Hightlight означает завертывание чисел в теги или что-то еще см http://jsfiddle.net/QhJWt/3/

1 Ответ

2 голосов
/ 27 октября 2011
function hightlightPhoneNumbers(phoneNumber, clip) {
    var re = new RegExp(clip.split('').join('[\\s-]*'), 'gi');
    return phoneNumber.replace(re, '<b>$&</b>');
}

Кстати, есть забавный нестандартный метод String.prototype.bold, который оборачивает строку в тег <b></b>.

Демо .

...