با استفاده از PHP و تابع str_replace یک تابع بنویس که یک متن خام را نرمالسازی کند: ارقام فارسی را به ارقام لاتین تبدیل کرده، علامت جداکننده هزار (، یا ٬) و نمادهای واحد پول (ریال، تومان، $) را حذف یا نرمال کند تا خروجی برای پردازش عددی آماده شود.
2.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:52 0.0
برای حل این سوال در PHP میتوانید از str_replace با آرایههای جستجو و جایگزینی استفاده کنید؛ ابتدا آرایهای از اعداد فارسی (۰-۹) و معادل لاتینشان بسازید و با str_replace جایگزین کنید، سپس کاراکترهای جداکننده هزار و نمادهای واحد پول را حذف یا با نقطه/رشته مناسب جایگزین کنید. نکات مفید: ترتیب جایگزینی مهم است، برای حذف فضاهای اضافی از trim و برای تبدیل نهایی به عدد از floatval یا (int) استفاده کنید؛ در صورت نیاز به الگوهای پیچیدهتر میتوان از preg_replace استفاده کرد اما این تمرین با str_replace قابل انجام است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای نرمالسازی متن با PHP از تابع str_replace همراه با دو آرایه جستجو و جایگزینی استفاده کنید تا ارقام فارسی به لاتین تبدیل شوند. ترتیب جایگزینی مهم است: ابتدا اعداد فارسی (۰–۹) را به معادل لاتینشان تبدیل کنید، سپس جداکنندههای هزار (، یا ٬) و نمادهای واحد پول (ریال، تومان، $) را حذف یا نرمال کنید. برای حذف فضاهای اضافی از trim استفاده کنید و نتیجه را با floatval یا (int) به عدد تبدیل کنید. اگر به الگوهای پیچیدهتر نیاز داشتید، ممکن است به preg_replace رجوع کنید، اما این تمرین با str_replace قابل انجام است.
گزارش