Menukar Kata Nombor kepada Integer
Mendapatkan Perwakilan Berangka daripada Borang Teks
Menukar teks yang mewakili nombor ke dalam integer yang sepadan adalah tugas biasa dalam pelbagai aplikasi. Bagaimanakah transformasi ini boleh dicapai dengan cekap?
Memanfaatkan Kamus Word-to-Integer
Satu pendekatan melibatkan membina kamus yang memetakan perkataan nombor kepada padanan berangkanya. Kamus ini boleh berfungsi sebagai jadual carian untuk menukar perkataan individu kepada integer. Majoriti kod yang disediakan dikhaskan untuk memulakan kamus ini (numwords).
Menghuraikan dan Menukar Teks
Untuk menukar keseluruhan perwakilan teks, kod membahagikan input kepada perkataan. Untuk setiap perkataan, ia mencari nilai integer yang sepadan dalam kamus dan memasukkannya ke dalam integer akhir. Kod ini cekap mengendalikan perkataan yang mewakili unit (cth., "satu", "dua"), puluh (cth., "dua puluh", "sembilan puluh") dan skala (cth., "ratus", "bilion"). Ia mengecam "dan" sebagai pembatas antara nombor individu.
Mengendalikan Nombor Besar
Kod ini juga mempertimbangkan kemungkinan nombor besar. Jika perkataan yang mewakili skala (cth., "ratus") ditemui, nilai integer semasa ditambahkan pada hasil, memulakan kitaran pengumpulan baharu. Ini membolehkan kod untuk mewakili nombor dengan berkesan dalam trilion atau lebih.
Contoh Penggunaan
Berikut ialah contoh yang menunjukkan kefungsian kod:
print text2int("seven billion one hundred million thirty one thousand three hundred thirty seven") #7100031337
Output: Kod menukar perwakilan teks yang diberikan dengan tepat kepada setara integernya, iaitu 7100031337.
Atas ialah kandungan terperinci Bagaimanakah Kita Boleh Menukar Perkataan Nombor kepada Integer dalam Teks dengan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!