یک تابع PHP بنویسید که یک رشته گزارش خام را گرفته و با استفاده از str_replace علائم جداکننده مختلف (مثل «،»، «;»، تب و انواع خطجدید) را به یک جداکننده استاندارد (مثلاً ویرگول) تبدیل کند، سپس رشته را به آرایه فیلدها تقسیم کرده و تعداد رکوردها را برگرداند.
6.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:23 0.0
برای حل، از str_replace با آرایه ورودی و خروجی برای جایگزینی همزمان چند علامت (مثل ["\r\n","\n","\t",";","،"] => [",",",",",",","]) استفاده کنید، سپس با explode روی جداکننده استاندارد رشته را به عناصر تقسیم کنید و با array_map('trim') و array_filter عناصر خالی را حذف کنید؛ در پایان با count طول آرایه یا با شمارش رکوردها نتیجه را بازگردانید. نکتهها: از توابع چندبایتی PHP هنگام کار با متنهای فارسی استفاده کنید و برای جایگزینیهای پیچیدهتر میتوان از preg_replace بهره برد، ولی برای این تمرین str_replace کافی و ساده است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکته کلیدی اینکه با str_replace میتوان چند جابجایی همزمان انجام داد و با آرایههای ورودی-خروجی، چند جداکننده را به یک جداکننده استاندارد تبدیل کرد. برای متنهای فارسی از توابع چندبایتی مانند mb_strlen و mb_convert_encoding استفاده کنید تا با کاراکترهای چندبایتی مشکلی نباشد و ورودی UTF-8 باشد. سپس با explode روی جداکننده استاندارد، و استفاده از array_map('trim') و array_filter فهرست رکوردها را پاکسازی کنید و با count طول آرایه را بازگردانید. در صورت نیاز به جایگزینهای پیچیدهتر میتوانید از preg_replace استفاده کنید، اما این تمرین با str_replace کافی است.
گزارش