Spaces:
Sleeping
Sleeping
import re | |
from num_thai.thainumbers import NumThai | |
num = NumThai() | |
# List of (Latin alphabet, Thai) pairs: | |
_latin_to_thai = [(re.compile('%s' % x[0], re.IGNORECASE), x[1]) for x in [ | |
('a', 'เอ'), | |
('b','บี'), | |
('c','ซี'), | |
('d','ดี'), | |
('e','อี'), | |
('f','เอฟ'), | |
('g','จี'), | |
('h','เอช'), | |
('i','ไอ'), | |
('j','เจ'), | |
('k','เค'), | |
('l','แอล'), | |
('m','เอ็ม'), | |
('n','เอ็น'), | |
('o','โอ'), | |
('p','พี'), | |
('q','คิว'), | |
('r','แอร์'), | |
('s','เอส'), | |
('t','ที'), | |
('u','ยู'), | |
('v','วี'), | |
('w','ดับเบิลยู'), | |
('x','เอ็กซ์'), | |
('y','วาย'), | |
('z','ซี') | |
]] | |
def num_to_thai(text): | |
return re.sub(r'(?:\d+(?:,?\d+)?)+(?:\.\d+(?:,?\d+)?)?', lambda x: ''.join(num.NumberToTextThai(float(x.group(0).replace(',', '')))), text) | |
def latin_to_thai(text): | |
for regex, replacement in _latin_to_thai: | |
text = re.sub(regex, replacement, text) | |
return text | |