Provides a pure Python implementation of rule-based number formatting (RBNF)
using the Unicode Common Locale Data Repository (CLDR). This library allows
for the spelling out of numbers for a wide range of locales, supporting
various rulesets depending on the locale.
.
The library supports literal text, quotient and remainder substitution,
optional substitution, rule substitution, and special rules for negative
numbers, improper fractions, NaN, and infinity.
.
Example usage:
.
>>> from unicode_rbnf import RbnfEngine
>>> engine = RbnfEngine.for_language("en")
>>> engine.format_number(1234)
'one thousand two hundred thirty-four'
.
>>> from unicode_rbnf import RbnfEngine, RulesetName
>>> engine = RbnfEngine.for_language("en")
>>> engine.format_number(1999, RulesetName.YEAR)
'nineteen ninety-nine'
>>> engine.format_number(11, RulesetName.ORDINAL)
'eleventh'
.
This package is particularly useful for applications requiring accurate and
locale-aware number spelling, such as text-to-speech systems, financial
applications, and other linguistic tools.
Installed Size: 1.3 MB
Architectures: all