Всем привет.
Можно ли стандартной функцией ЧислоПрописью() получить пропись в следующем формате:
Twenty-four thousand one hundred thirty-six dollars and 69 cents? Вроде как по правилам именно такое представление является корректным.

Вопрос только в дефисах при выводе составного числительного twenty-four, thirty-six.
Переключение локализации между американским/британским английским не помогло, использование упрощенной/классической прописи тоже. Платформа 8.3.15.1656
---
почему 48? Пардон, это я как 1С-ник посчитал, а не как программист.
вроде 9 всего Не согласен (в первую очередь с самим собой в (7)), достаточно всего 6:
"ty o" > "ty-o" "ty t" > "ty-t" "ty f" > "ty-f" "ty s" > "ty-s" "ty e" > "ty-e" "ty n" > "ty-n"
---
Мне кажется обойтись одной лишь этой функцией не выйдет.
или писать аналог этой функции с нужным результатом или использовать стрзаменить() и менять, или какие-то сторонние решения.
---
Да, похоже только так
---
Сообщить(ЧислоПрописью(1234.56, "Л=en_US;ДП=Истина", "dollar,dollars,cent,cents,2"));
---
без обид, но сами-то пробовали посмотреть результат?
мне такое возвращается: "One thousand two hundred thirty four dollars fifty six cents"
требуемый вариант "One thousand two hundred thirty-four dollars and fifty-six cents"
---
А далее, результат обработай через СтрЗаменить
Можешь написать свою функцию.
---
А далее, результат обработай через СтрЗаменить Ага, всего-то 48 замен. ;)
---
почему 48? вроде 9 всего
"ty one" > "ty-one" ..... "ty nine" > "ty-nine"
---
почему 48? Пардон, это я как 1С-ник посчитал, а не как программист.
вроде 9 всего Не согласен (в первую очередь с самим собой в (7)), достаточно всего 6:
"ty o" > "ty-o" "ty t" > "ty-t" "ty f" > "ty-f" "ty s" > "ty-s" "ty e" > "ty-e" "ty n" > "ty-n"
---
twenty thousand?
я бы не мудрил ;)
---
twenty thousand? Ну откуда у программиста такие деньги? ;)
---
я бы не мудрил ;) А я все-таки еще чуть-чуть помудрил и сократил до трех замен:

```1c
    ПредставлениеСуммы = СтрЗаменить(СтрЗаменить(СтрЗаменить(ПредставлениеСуммы,"ty ","ty-"),"ty-thousand","ty thousand"),"ty-dollar","ty dollar");
```

Для богатых - четыре замены:

```1c
    ПредставлениеСуммы = СтрЗаменить(СтрЗаменить(СтрЗаменить(СтрЗаменить(ПредставлениеСуммы,"ty ","ty-"),"ty-million","ty million"),"ty-thousand","ty thousand"),"ty-dollar","ty dollar");
```
---
а если не доллары?
---
Может кому еще понадобится

```1c
    Процедура ПреобразоватьПредставлениеПоПравилу(ПредставлениеСуммы)

    Для йота = 21 По 99 Цикл

    // составное числительное в начале строки
    ТекПредставление = ЧислоПрописью(йота, "L=en_US;НП=Ложь;", ",,,,0");
    Если СтрНайти(ПредставлениеСуммы, ТекПредставление) Тогда
    ПредставлениеСуммы = СтрЗаменить(ПредставлениеСуммы, ТекПредставление, СтрЗаменить(ТекПредставление, " ", "-"));
    КонецЕсли;

    // составное числительное в середине строки
    ТекПредставление = НРег(ТекПредставление);
    Если СтрНайти(ПредставлениеСуммы, ТекПредставление) Тогда
    ПредставлениеСуммы = СтрЗаменить(ПредставлениеСуммы, ТекПредставление, СтрЗаменить(ТекПредставление, " ", "-"));
    КонецЕсли;

    КонецЦикла;

    КонецПроцедуры
```
---
79 итераций? по 2 стрнайти? оптимальность? не... не слышали
---
Да, Ваш вариант лучше.