я получаю следующие валюты в процессе импорта:Разбираем отрицательные валюты с скобкой
$22.21
($55.95)
я могу сделать Money.parse('$22.21')
для разбора в RubyMoney объекта.
Однако, как я могу разобрать ($55.95)
в отрицательный объект RubyMoney? Нужно ли сначала разобрать его на отрицательное число, а затем на объект RubyMoney? Это похоже на общий запрос, но я не могу найти что-либо с помощью поиска по какой-то странной причине.
Если я получу -$55.95
, тогда я могу запустить Money.parse('-$55.95')
. Бонусные баллы, если метод может обрабатывать как положительные, так и отрицательные валюты.
В зависимости от того, насколько хорошо сформированы данные, вы можете добавить знак $ для защиты от меньшего размера. – griotspeak
Или проще, если вы считаете, что формат - это деньги: 'str.gsub (/^(\(.*\))$/, '- \ 1')' или что-то в этом роде. ;) – lurker
Хороший вызов @mbratch - мое регулярное выражение не настолько твердое. :) – CDub