Spaces:
Sleeping
Sleeping
#!/usr/bin/env python | |
# coding: utf-8 | |
# In[9]: | |
import re | |
def replace_words(sentence): | |
replacement_map = { | |
# Single digits | |
'one': ['ஒன்று', 'ஒன்னு', 'ஒன்'], | |
'two': ['இரண்டு', 'ரெண்டு', 'டூ'], | |
'three': ['மூன்று', 'முன்னு', 'த்ரீ'], | |
'four': ['நான்கு', 'நாலு', 'ஃபோர்'], | |
'five': ['ஐந்து', 'அஞ்சு', 'ஃபைவ்'], | |
'six': ['ஆறு', 'ஆறு', 'சிக்ஸ்'], | |
'seven': ['ஏழு', 'எழு', 'செவன்'], | |
'eight': ['எட்டு', 'எட்டு', 'எய்ட்'], | |
'nine': ['ஒன்பது', 'ஒம்பது', 'நைன்'], | |
'ten': ['பத்து', 'பத்து', 'டென'], | |
# Numbers from 11 to 19 | |
'eleven': ['பதினொன்று', 'பதினொன்னு', 'எலெவன்'], | |
'twelve': ['பன்னிரண்டு', 'பன்னிரண்டு', 'ட்வெல்வ்'], | |
'thirteen': ['பதின்மூன்று', 'பதின்முன்னு', 'தர்டீன்'], | |
'fourteen': ['பதினான்கு', 'பதின்நாலு', 'ஃபோர்டீன்'], | |
'fifteen': ['பதினைந்து', 'பதினஞ்சு', 'ஃபிப்டீன்'], | |
'sixteen': ['பதினாறு', 'பதினாறோ', 'சிக்ஸ்டீன்'], | |
'seventeen': ['பதினேழு', 'பதினேழு', 'செவன்டீன்'], | |
'eighteen': ['பதினெட்டு', 'பதினெட்டு', 'ஏட்டீன்'], | |
'nineteen': ['பத்தொன்பது', 'பத்தொம்பது', 'நைன்டீன்'], | |
# Multiples of ten | |
'twenty': ['இருபது', 'இருபத்து', 'ட்வென்டி'], | |
'thirty': ['முப்பது', 'முப்பத்து', 'தர்டி'], | |
'forty': ['நாற்பது', 'நாற்பத்து', 'ஃபோர்டி'], | |
'fifty': ['ஐம்பது', 'ஐம்பத்து', 'ஃபிப்டி'], | |
'sixty': ['அறுபது', 'அறுபத்து', 'சிக்ஸ்டி'], | |
'seventy': ['எழுபது', 'எழுபத்து', 'செவன்டி'], | |
'eighty': ['எண்பது', 'எண்பத்து', 'ஏட்டி'], | |
'ninety': ['தொண்ணூறு', 'தொன்னூறு', 'நைன்டி'], | |
# Numbers from 21 to 29 | |
'twenty one': ['இருபத்து ஒன்று', 'இருபத்தொன்று', 'ட்வென்டி ஒன்'], | |
'twenty two': ['இருபத்து இரண்டு', 'இருபத்திரண்டு', 'ட்வென்டி டூ'], | |
'twenty three': ['இருபத்து மூன்று', 'இருபத்துமூன்று', 'ட்வென்டி த்ரீ'], | |
'twenty four': ['இருபத்து நான்கு', 'இருபத்துநான்கு', 'ட்வென்டி ஃபோர்'], | |
'twenty five': ['இருபத்து ஐந்து', 'இருபத்துஐந்து', 'ட்வென்டி ஃபைவ்'], | |
'twenty six': ['இருபத்து ஆறு', 'இருபத்துஆறு', 'ட்வென்டி சிக்ஸ்'], | |
'twenty seven': ['இருபத்து ஏழு', 'இருபத்துஏழு', 'ட்வென்டி செவன்'], | |
'twenty eight': ['இருபத்து எட்டு', 'இருபத்துஎட்டு', 'ட்வென்டி ஏட்'], | |
'twenty nine': ['இருபத்து ஒன்பது', 'இருபத்தொன்பது', 'ட்வென்டி நைன்'], | |
# Numbers from 31 to 39 | |
'thirty one': ['முப்பத்து ஒன்று', 'முப்பத்தொன்று', 'தர்டி ஒன்'], | |
'thirty two': ['முப்பத்து இரண்டு', 'முப்பத்திரண்டு', 'தர்டி டூ'], | |
'thirty three': ['முப்பத்து மூன்று', 'முப்பத்துமூன்று', 'தர்டி த்ரீ'], | |
'thirty four': ['முப்பத்து நான்கு', 'முப்பத்துநான்கு', 'தர்டி ஃபோர்'], | |
'thirty five': ['முப்பத்து ஐந்து', 'முப்பத்துஐந்து', 'தர்டி ஃபைவ்'], | |
'thirty six': ['முப்பத்து ஆறு', 'முப்பத்துஆறு', 'தர்டி சிக்ஸ்'], | |
'thirty seven': ['முப்பத்து ஏழு', 'முப்பத்துஏழு', 'தர்டி செவன்'], | |
'thirty eight': ['முப்பத்து எட்டு', 'முப்பத்துஎட்டு', 'தர்டி ஏட்'], | |
'thirty nine': ['முப்பத்து ஒன்பது', 'முப்பத்தொன்பது', 'தர்டி நைன்'], | |
# Numbers from 41 to 49 | |
'forty one': ['நாற்பத்து ஒன்று', 'நாற்பத்தொன்று', 'ஃபோர்டி ஒன்'], | |
'forty two': ['நாற்பத்து இரண்டு', 'நாற்பத்திரண்டு', 'ஃபோர்டி டூ'], | |
'forty three': ['நாற்பத்து மூன்று', 'நாற்பத்துமூன்று', 'ஃபோர்டி த்ரீ'], | |
'forty four': ['நாற்பத்து நான்கு', 'நாற்பத்துநான்கு', 'ஃபோர்டி ஃபோர்'], | |
'forty five': ['நாற்பத்து ஐந்து', 'நாற்பத்துஐந்து', 'ஃபோர்டி ஃபைவ்'], | |
'forty six': ['நாற்பத்து ஆறு', 'நாற்பத்துஆறு', 'ஃபோர்டி சிக்ஸ்'], | |
'forty seven': ['நாற்பத்து ஏழு', 'நாற்பத்துஏழு', 'ஃபோர்டி செவன்'], | |
'forty eight': ['நாற்பத்து எட்டு', 'நாற்பத்துஎட்டு', 'ஃபோர்டி ஏட்'], | |
'forty nine': ['நாற்பத்து ஒன்பது', 'நாற்பத்தொன்பது', 'ஃபோர்டி நைன்'], | |
# Numbers from 51 to 59 | |
'fifty one': ['ஐம்பத்து ஒன்று', 'ஐம்பத்தொன்று', 'ஃபிப்டி ஒன்'], | |
'fifty two': ['ஐம்பத்து இரண்டு', 'ஐம்பத்திரண்டு', 'ஃபிப்டி டூ'], | |
'fifty three': ['ஐம்பத்து மூன்று', 'ஐம்பத்துமூன்று', 'ஃபிப்டி த்ரீ'], | |
'fifty four': ['ஐம்பத்து நான்கு', 'ஐம்பத்துநான்கு', 'ஃபிப்டி ஃபோர்'], | |
'fifty five': ['ஐம்பத்து ஐந்து', 'ஐம்பத்துஐந்து', 'ஃபிப்டி ஃபைவ்'], | |
'fifty six': ['ஐம்பத்து ஆறு', 'ஐம்பத்துஆறு', 'ஃபிப்டி சிக்ஸ்'], | |
'fifty seven': ['ஐம்பத்து ஏழு', 'ஐம்பத்துஏழு', 'ஃபிப்டி செவன்'], | |
'fifty eight': ['ஐம்பத்து எட்டு', 'ஐம்பத்துஎட்டு', 'ஃபிப்டி ஏட்'], | |
'fifty nine': ['ஐம்பத்து ஒன்பது', 'ஐம்பத்தொன்பது', 'ஃபிப்டி நைன்'], | |
# Numbers from 61 to 69 | |
'sixty one': ['அறுபத்து ஒன்று', 'அறுபத்தொன்று', 'சிக்ஸ்டி ஒன்'], | |
'sixty two': ['அறுபத்து இரண்டு', 'அறுபத்திரண்டு', 'சிக்ஸ்டி டூ'], | |
'sixty three': ['அறுபத்து மூன்று', 'அறுபத்துமூன்று', 'சிக்ஸ்டி த்ரீ'], | |
'sixty four': ['அறுபத்து நான்கு', 'அறுபத்துநான்கு', 'சிக்ஸ்டி ஃபோர்'], | |
'sixty five': ['அறுபத்து ஐந்து', 'அறுபத்துஐந்து', 'சிக்ஸ்டி ஃபைவ்'], | |
'sixty six': ['அறுபத்து ஆறு', 'அறுபத்துஆறு', 'சிக்ஸ்டி சிக்ஸ்'], | |
'sixty seven': ['அறுபத்து ஏழு', 'அறுபத்துஏழு', 'சிக்ஸ்டி செவன்'], | |
'sixty eight': ['அறுபத்து எட்டு', 'அறுபத்துஎட்டு', 'சிக்ஸ்டி ஏட்'], | |
'sixty nine': ['அறுபத்து ஒன்பது', 'அறுபத்தொன்பது', 'சிக்ஸ்டி நைன்'], | |
# Numbers from 71 to 79 | |
'seventy one': ['எழுபத்து ஒன்று', 'எழுபத்தொன்று', 'செவன்டி ஒன்'], | |
'seventy two': ['எழுபத்து இரண்டு', 'எழுபத்திரண்டு', 'செவன்டி டூ'], | |
'seventy three': ['எழுபத்து மூன்று', 'எழுபத்துமூன்று', 'செவன்டி த்ரீ'], | |
'seventy four': ['எழுபத்து நான்கு', 'எழுபத்துநான்கு', 'செவன்டி ஃபோர்'], | |
'seventy five': ['எழுபத்து ஐந்து', 'எழுபத்துஐந்து', 'செவன்டி ஃபைவ்'], | |
'seventy six': ['எழுபத்து ஆறு', 'எழுபத்துஆறு', 'செவன்டி சிக்ஸ்'], | |
'seventy seven': ['எழுபத்து ஏழு', 'எழுபத்துஏழு', 'செவன்டி செவன்'], | |
'seventy eight': ['எழுபத்து எட்டு', 'எழுபத்துஎட்டு', 'செவன்டி ஏட்'], | |
'seventy nine': ['எழுபத்து ஒன்பது', 'எழுபத்தொன்பது', 'செவன்டி நைன்'], | |
# Numbers from 81 to 89 | |
'eighty one': ['எண்பத்து ஒன்று', 'எண்பத்தொன்று', 'ஏட்டி ஒன்'], | |
'eighty two': ['எண்பத்து இரண்டு', 'எண்பத்திரண்டு', 'ஏட்டி டூ'], | |
'eighty three': ['எண்பத்து மூன்று', 'எண்பத்துமூன்று', 'ஏட்டி த்ரீ'], | |
'eighty four': ['எண்பத்து நான்கு', 'எண்பத்துநான்கு', 'ஏட்டி ஃபோர்'], | |
'eighty five': ['எண்பத்து ஐந்து', 'எண்பத்துஐந்து', 'ஏட்டி ஃபைவ்'], | |
'eighty six': ['எண்பத்து ஆறு', 'எண்பத்துஆறு', 'ஏட்டி சிக்ஸ்'], | |
'eighty seven': ['எண்பத்து ஏழு', 'எண்பத்துஏழு', 'ஏட்டி செவன்'], | |
'eighty eight': ['எண்பத்து எட்டு', 'எண்பத்துஎட்டு', 'ஏட்டி ஏட்'], | |
'eighty nine': ['எண்பத்து ஒன்பது', 'எண்பத்தொன்பது', 'ஏட்டி நைன்'], | |
# Numbers from 91 to 99 | |
'ninety one': ['தொண்ணூற்று ஒன்று', 'தொண்ணூற்றொன்று', 'நைன்டி ஒன்'], | |
'ninety two': ['தொண்ணூற்று இரண்டு', 'தொண்ணூற்றிரண்டு', 'நைன்டி டூ'], | |
'ninety three': ['தொண்ணூற்று மூன்று', 'தொண்ணூற்றுமூன்று', 'நைன்டி த்ரீ'], | |
'ninety four': ['தொண்ணூற்று நான்கு', 'தொண்ணூற்றுநான்கு', 'நைன்டி ஃபோர்'], | |
'ninety five': ['தொண்ணூற்று ஐந்து', 'தொண்ணூற்றுஐந்து', 'நைன்டி ஃபைவ்'], | |
'ninety six': ['தொண்ணூற்று ஆறு', 'தொண்ணூற்றுஆறு', 'நைன்டி சிக்ஸ்'], | |
'ninety seven': ['தொண்ணூற்று ஏழு', 'தொண்ணூற்றுஏழு', 'நைன்டி செவன்'], | |
'ninety eight': ['தொண்ணூற்று எட்டு', 'தொண்ணூற்றுஎட்டு', 'நைன்டி ஏட்'], | |
'ninety nine': ['தொண்ணூற்று ஒன்பது', 'தொண்ணூற்றொன்பது', 'நைன்டி நைன்'], | |
# Hundred | |
'hundred': ['நூறு', 'நூறை', 'ஹண்ட்ரெட்'], | |
# Thousand | |
'thousand': ['ஆயிரம்'], | |
} | |
words = sentence.split() # Split the sentence by spaces | |
# Replace words using the mapping | |
for i, word in enumerate(words): | |
for replacement, patterns in replacement_map.items(): | |
if word in patterns: | |
words[i] = replacement # Replace the word if it's fully matched | |
# Join the processed words back into a sentence | |
return ' '.join(words) | |
# In[ ]: | |