@ligisayan

Как отформатировать цену?

Есть у меня англоязычный шаблон, которому делаю локализацию.
Столкнулся с задачей перевода символов в отображении цены, т.к. в английской цены вводятся в виде `$45`, т.е. знак доллара на первом месте, а потом число, а в русскоязычном наоборот, сначала значение, а потом `руб.`
Исходное значение подается в таком виде, где `р` - кириллические символы букв:

value = 260000руб.
var out = value.replace(/^([^\d]*)([\d]*)/g,'$2 $1');

В результате окончательного преобразования получаю 260000руб..
А хотелось бы, чтобы был пробел после числа и точкой разделялись тысячи, миллионы, миллиарды, т.е. 260.000 руб..
  • Вопрос задан
  • 154 просмотра
Решения вопроса 1
@ligisayan Автор вопроса
Кому интересно - решение у меня получилось вот такое:
value.replace(/^(.*?)(\d+)$/g,'$2 $1').replace(/(\d)(?=(\d\d\d)+([^\d]|$))/g, '$1.');
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы