Num2Word
Contents
Num2Word#
This tutorial is available as an IPython notebook at Malaya/example/num2word.
[1]:
import malaya
/home/husein/dev/malaya/malaya/tokenizer.py:214: FutureWarning: Possible nested set at position 3397
self.tok = re.compile(r'({})'.format('|'.join(pipeline)))
/home/husein/dev/malaya/malaya/tokenizer.py:214: FutureWarning: Possible nested set at position 3927
self.tok = re.compile(r'({})'.format('|'.join(pipeline)))
To cardinal#
def to_cardinal(number):
"""
Translate from number input to cardinal text representation
Parameters
----------
number: real number
Returns
-------
result: str
cardinal representation
"""
[2]:
malaya.num2word.to_cardinal(123456789)
[2]:
'seratus dua puluh tiga juta empat ratus lima puluh enam ribu tujuh ratus lapan puluh sembilan'
[3]:
malaya.num2word.to_cardinal(10)
[3]:
'sepuluh'
[4]:
malaya.num2word.to_cardinal(12)
[4]:
'dua belas'
[5]:
malaya.num2word.to_cardinal(-1234567.89)
[5]:
'negatif satu juta dua ratus tiga puluh empat ribu lima ratus enam puluh tujuh perpuluhan lapan sembilan'
To ordinal#
def to_ordinal(number):
"""
Translate from number input to ordinal text representation
Parameters
----------
number: real number
Returns
-------
result: str
ordinal representation
"""
[6]:
malaya.num2word.to_ordinal(1)
[6]:
'pertama'
[7]:
malaya.num2word.to_cardinal(1)
[7]:
'satu'
[8]:
malaya.num2word.to_ordinal(10)
[8]:
'kesepuluh'
[9]:
malaya.num2word.to_ordinal(12)
[9]:
'kedua belas'
[10]:
malaya.num2word.to_cardinal(-123456789)
[10]:
'negatif seratus dua puluh tiga juta empat ratus lima puluh enam ribu tujuh ratus lapan puluh sembilan'