fork download
  1. // данные
  2. let str, result, isValid;
  3. const template = "$1 $2 $3";
  4. const regExp = /^(\d)(\d{2})(\d{2}).*/;
  5.  
  6. const advancedFormatter = (str, regExp, template) => {
  7. isValid = regExp.test(str);
  8.  
  9. // форматируем либо оставляем исходную строку
  10. result = isValid ? str.replace(regExp, template) : str;
  11.  
  12. print("Пришло:", str);
  13. print("isValid:", isValid);
  14. print("Форматировано:", result);
  15. print("\n");
  16.  
  17. return isValid;
  18. };
  19.  
  20. advancedFormatter("125", regExp, template);
  21. advancedFormatter("1221321345", regExp, template);
  22. advancedFormatter("10000010021031023002301030", regExp, template);
Success #stdin #stdout 0s 107072KB
stdin
Standard input is empty
stdout
Пришло: 125
isValid: false
Форматировано: 125


Пришло: 1221321345
isValid: true
Форматировано: 1 22 13


Пришло: 10000010021031023002301030
isValid: true
Форматировано: 1 00 00