Добавление нуля в начало дня и месяца, отличных от нуля, с помощью регулярных выражений - PullRequest
0 голосов
/ 20 мая 2018

Мой javascript:

date = '1390-1-1';
date = date.replace(/-\d{1}/g, "0$&");

// returns 13900-10-1

Однако я хочу, чтобы это вернуло 1390-01-01

Как я могу изменить регулярное выражение для решения проблемы?

Спасибо

1 Ответ

0 голосов
/ 20 мая 2018

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

str = str.replace(/-([1-9])(?!\d)/g, '-0$1');

Демонстрация RegEx

  • -([1-9]): сопоставить дефис, за которым следует цифра 1-9, и ввести цифру вгруппа # 1
  • (?!\d): отрицательный взгляд, чтобы утверждать, что у нас нет цифры впереди
  • Замена - -0$1, которая ставит 0 перед одной цифрой
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...