Строка формата регулярных выражений JavaScript, содержащая номер карты American Express



Я пытаюсь отформатировать строку, содержащую номер кредитной карты American Express, используя регулярное выражение. Вот что я использую для форматирования номеров Visa, MasterCard и Discover, но это явно не работает для American Express:



var formatVisaMasterCardDiscover = function (
number) {
return number.split(/(?=(?:d{4})+($))/).filter(function (
n) {
return (n != "");
}).join("-");
};


Итак, мне любопытно, каким будет регулярное выражение для числа Amex. Формат должен быть {4}-{6}-{5}. Я был бы признателен за любую помощь, потому что я не мог найти ничего во время поиска, кроме того, как проверить его, что не то, что я хочу. Я хочу отформатировать его.

588   1  

1 ответ:

Вы можете использовать:

var ccNum = '341256789012345';

var ccFmt = ccNum.replace(/\b(\d{4})(\d{6})(\d{5})\b/, '$1-$2-$3');
//=> 3412-567890-12345

Демонстрация Регулярных Выражений

Comments

    Ничего не найдено.