Можете ли вы удалить символы с помощью помощника Handlebars?

Я использую Handlebars для компиляции шаблона, который возвращает данные JSON. Моя проблема в том, что я хотел бы создать ссылку tel на отображаемые номера телефонов, но они возвращаются в следующем формате: (XXX) XXX-XXXX

Я знаю, что вы можете зарегистрировать помощника, чтобы взять строку чисел, а затем отформатировать их, но есть ли способ сделать обратное (удалить любые нечисловые символы/пробелы)?

Это помощник, который делает обратное тому, что я пытаюсь сделать:

Handlebars.registerHelper("formatPhoneNumber", function(phoneNumber) {
  phoneNumber = phoneNumber.toString();
  return "(" + phoneNumber.substr(0,3) + ") " + phoneNumber.substr(3,3) + "-" + phoneNumber.substr(6,4);
});

Спасибо!


person APAD1    schedule 01.05.2014    source источник


Ответы (2)


Конечно, вы можете просто использовать регулярное выражение, чтобы удалить все, что не является цифрой:

Handlebars.registerHelper("unformatPhoneNumber", function(phoneNumber) {
    return phoneNumber.replace(/\D/g,'');
});
person Ethan Brown    schedule 01.05.2014
comment
Ага, только что понял. Тем не менее, спасибо, я приму ваш ответ! - person APAD1; 01.05.2014

Неважно, понял это на основе ответа без руля.

Handlebars.registerHelper("formatPhoneNumber", function(phoneNumber) {
    return phoneNumber.replace(/\D/g,'');
});
person APAD1    schedule 01.05.2014