File size: 11,047 Bytes
f63b5a2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 |
{
"cells": [
{
"cell_type": "code",
"execution_count": 7,
"id": "19bbb494-3054-48ae-9b64-7f0756c0532d",
"metadata": {},
"outputs": [],
"source": [
"import re\n",
"\n",
"def replace_words(sentence):\n",
" # Define a dictionary mapping a single word to a list of words or phrases\n",
" replacement_map = {\n",
" # Multiples of ten\n",
" 'twenty': ['ट्वेंटी', 'बीस'],\n",
" 'thirty': ['थर्टी', 'तीस'],\n",
" 'forty': ['फोर्टी', 'चालीस'],\n",
" 'fifty': ['फिफ्टी', 'पचास'],\n",
" 'sixty': ['सिक्स्टी', 'साठ'],\n",
" 'seventy': ['सेवंटी', 'सत्तर','सेवनटी','सेवेनटी','सेवांटी'],\n",
" 'eighty': ['एटी', 'अस्सी'],\n",
" 'ninety': ['नाइंटी', 'नब्बे'],\n",
" \n",
" # Numbers from 11 to 19\n",
" 'eleven': ['इलेवन', 'ग्यारह','इगारा'],\n",
" 'twelve': ['ट्वेल्व', 'बारह'],\n",
" 'thirteen': ['थर्टीन', 'तेरह','तेरा'],\n",
" 'fourteen': ['फोर्टीन', 'चौदह'],\n",
" 'fifteen': ['फिफ्टीन', 'पंद्रह','पंद्रा'],\n",
" 'sixteen': ['सिक्स्टीन', 'सोलह','सोल्ला'],\n",
" 'seventeen': ['सेवंटीन', 'सत्रह''सतरा'],\n",
" 'eighteen': ['एटीन', 'अठारह''अठारा'],\n",
" 'nineteen': ['नाइनटीन', 'उन्नीस','उन्नईस','उनाइस'],\n",
"\n",
" # Numbers from 21 to 29\n",
" 'twenty one': ['ट्वेंटी वन', 'इक्कीस'],\n",
" 'twenty two': ['ट्वेंटी टू', 'बाईस'],\n",
" 'twenty three': ['ट्वेंटी थ्री', 'तेईस'],\n",
" 'twenty four': ['ट्वेंटी फोर', 'चौबीस'],\n",
" 'twenty five': ['ट्वेंटी फाइव', 'पच्चीस'],\n",
" 'twenty six': ['ट्वेंटी सिक्स', 'छब्बीस'],\n",
" 'twenty seven': ['ट्वेंटी सेवन', 'सत्ताईस','सताईस'],\n",
" 'twenty eight': ['ट्वेंटी एट', 'अट्ठाईस','अठ्ठाइस','अठ्ठाईस'],\n",
" 'twenty nine': ['ट्वेंटी नाइन', 'उनतीस'],\n",
"\n",
" # Numbers from 31 to 39\n",
" 'thirty one': ['थर्टी वन', 'इकतीस'],\n",
" 'thirty two': ['थर्टी टू', 'बत्तीस'],\n",
" 'thirty three': ['थर्टी थ्री', 'तेतीस'],\n",
" 'thirty four': ['थर्टी फोर', 'चौंतीस'],\n",
" 'thirty five': ['थर्टी फाइव', 'पैंतीस'],\n",
" 'thirty six': ['थर्टी सिक्स', 'छत्तीस'],\n",
" 'thirty seven': ['थर्टी सेवन', 'सैंतीस'],\n",
" 'thirty eight': ['थर्टी एट', 'अड़तीस'],\n",
" 'thirty nine': ['थर्टी नाइन', 'उनतालीस'],\n",
"\n",
" # Numbers from 41 to 49\n",
" 'forty one': ['फोर्टी वन', 'इकतालीस'],\n",
" 'forty two': ['फोर्टी टू', 'बयालीस'],\n",
" 'forty three': ['फोर्टी थ्री', 'तैंतालीस'],\n",
" 'forty four': ['फोर्टी फोर', 'चौंतालीस'],\n",
" 'forty five': ['फोर्टी फाइव', 'पैंतालीस'],\n",
" 'forty six': ['फोर्टी सिक्स', 'छयालिस'],\n",
" 'forty seven': ['फोर्टी सेवन', 'सैंतालीस'],\n",
" 'forty eight': ['फोर्टी एट', 'अड़तालीस'],\n",
" 'forty nine': ['फोर्टी नाइन', 'उनचास'],\n",
"\n",
" # Numbers from 51 to 59\n",
" 'fifty one': ['फिफ्टी वन', 'इक्यावन'],\n",
" 'fifty two': ['फिफ्टी टू', 'बावन'],\n",
" 'fifty three': ['फिफ्टी थ्री', 'तिरेपन'],\n",
" 'fifty four': ['फिफ्टी फोर', 'चौवन'],\n",
" 'fifty five': ['फिफ्टी फाइव', 'पचपन'],\n",
" 'fifty six': ['फिफ्टी सिक्स', 'छप्पन','छपपन'],\n",
" 'fifty seven': ['फिफ्टी सेवन', 'सत्तावन','संताबन','संतावन'],\n",
" 'fifty eight': ['फिफ्टी एट', 'अट्ठावन','अंठावन'],\n",
" 'fifty nine': ['फिफ्टी नाइन', 'उनसठ','उंसट'],\n",
"\n",
" # Numbers from 61 to 69\n",
" 'sixty one': ['सिक्स्टी वन', 'इकसठ'],\n",
" 'sixty two': ['सिक्स्टी टू', 'बासठ'],\n",
" 'sixty three': ['सिक्स्टी थ्री', 'तिरसठ'],\n",
" 'sixty four': ['सिक्स्टी फोर', 'चौंसठ'],\n",
" 'sixty five': ['सिक्स्टी फाइव', 'पैंसठ'],\n",
" 'sixty six': ['सिक्स्टी सिक्स', 'छियासठ'],\n",
" 'sixty seven': ['सिक्स्टी सेवन', 'सड़सठ'],\n",
" 'sixty eight': ['सिक्स्टी एट', 'अड़सठ'],\n",
" 'sixty nine': ['सिक्स्टी नाइन', 'उनहत्तर'],\n",
"\n",
" # Numbers from 71 to 79\n",
" 'seventy one': ['सेवंटी वन', 'इकहत्तर','इखत्तर','इकत्तर'],\n",
" 'seventy two': ['सेवंटी टू', 'बहत्तर'],\n",
" 'seventy three': ['सेवंटी थ्री', 'तिहत्तर','तियत्र','तियत्तर','तीहत्तर','तिहत्थर'],\n",
" 'seventy four': ['सेवंटी फोर', 'चौहत्तर',],\n",
" 'seventy five': ['सेवंटी फाइव', 'पचहत्तर','पछत्तर','पिछत्तर','पचहत्तर','पचत्तर'],\n",
" 'seventy six': ['सेवंटी सिक्स', 'छिहत्तर','छीहत्तर'],\n",
" 'seventy seven': ['सेवंटी सेवन', 'सतहत्तर','सतात्तर','सतत्तर','सतहत्थर'],\n",
" 'seventy eight': ['सेवंटी एट', 'अठहत्तर','अठत्तर'],\n",
" 'seventy nine': ['सेवंटी नाइन', 'उन्यासी','उनासी'],\n",
"\n",
" # Numbers from 81 to 89\n",
" 'eighty one': ['एटी वन', 'इक्यासी'],\n",
" 'eighty two': ['एटी टू', 'बयासी'],\n",
" 'eighty three': ['एटी थ्री', 'तिरासी'],\n",
" 'eighty four': ['एटी फोर', 'चौरासी'],\n",
" 'eighty five': ['एटी फाइव', 'पचासी'],\n",
" 'eighty six': ['एटी सिक्स', 'छियासी'],\n",
" 'eighty seven': ['एटी सेवन', 'सतासी'],\n",
" 'eighty eight': ['एटी एट', 'अठासी'],\n",
" 'eighty nine': ['एटी नाइन', 'नवासी'],\n",
"\n",
" # Numbers from 91 to 99\n",
" 'ninety one': ['नाइंटी वन', 'इक्यानवे'],\n",
" 'ninety two': ['नाइंटी टू', 'बानवे'],\n",
" 'ninety three': ['नाइंटी थ्री', 'तिरानवे'],\n",
" 'ninety four': ['नाइंटी फोर', 'चौरानवे'],\n",
" 'ninety five': ['नाइंटी फाइव', 'पचानवे'],\n",
" 'ninety six': ['नाइंटी सिक्स', 'छियानवे'],\n",
" 'ninety seven': ['नाइंटी सेवन', 'सतानवे'],\n",
" 'ninety eight': ['नाइंटी एट', 'अठानवे'],\n",
" 'ninety nine': ['नाइंटी नाइन', 'निन्यानवे'],\n",
" # Numbers from one to ten\n",
" 'seven': ['सेवन', 'सात'],\n",
" 'zero': ['शून्य', 'जेरो', 'शुन्ना', 'जीरो'],\n",
" 'one': ['वन', 'एंक', 'इक', 'एक'],\n",
" 'two': ['टू', 'दो'],\n",
" 'three': ['थ्री', 'तीना', 'तीन', 'त्री'],\n",
" 'four': ['फोर', 'फॉर', 'च्यार', 'चार'],\n",
" 'five': ['फाइव', 'पाँच', 'पांच'],\n",
" 'six': ['सिक्स', 'चह', 'छौ', 'छै', 'छह', 'छे'],\n",
" 'eight': ['एट', 'अट', 'आठ'],\n",
" 'nine': ['नाइन', 'नौ'],\n",
" 'ten': ['टेन', 'दस'],\n",
" # Hundred\n",
" 'hundred': ['हंड्रेड', 'सौ','सो','साव'],\n",
" # Thousand\n",
" 'thousand' : ['हजार','थौजनड','थाउजंड','हज़ार'],\n",
" # Lakhs\n",
" 'lac' : ['लाख'],\n",
"\n",
" # Special for double digits\n",
" 'डबल': ['दबल', 'डबल', 'दुबाल'],\n",
" }\n",
"\n",
" words = sentence.split() # Split the sentence by spaces\n",
"\n",
" # Replace words using the mapping\n",
" for i, word in enumerate(words):\n",
" for replacement, patterns in replacement_map.items():\n",
" if word in patterns:\n",
" words[i] = replacement # Replace the word if it's fully matched\n",
"\n",
" # Join the processed words back into a sentence\n",
" return ' '.join(words)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "7bdb593a-cb68-4b04-af8d-b61ea396a5eb",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.7"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
|