یک تابع PHP بنویسید که در یک رشته ورودی تمام موارد "مدیر" و "manager" را بهصورت بدون توجه به حروف بزرگ/کوچک با "کاربر" جایگزین کند و خروجی شامل متن جدید و تعداد جایگزینیها باشد.
27.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 05:08 0.0
برای حل این سوال از تابع str_ireplace در PHP استفاده کنید که جایگزینی بدون حساسیت به حروف را فراهم میکند؛ میتوانید آرایهای از کلمات جستجو (['مدیر','manager']) و مقدار جایگزین ('کاربر') را به آن بدهید و با پارامتر چهارم تعداد جایگزینیها را دریافت کنید. این مسئله نمونهای از پردازش متن و آنالیز دادههاست؛ اگر به نیاز به تطابق با مرز کلمات یا الگوهای پیچیده دارید از preg_replace استفاده کنید و برای مسائل مربوط به حروف چندبایتی فارسی مراقب توابع mb_* باشید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای این کار میتوانید از str_ireplace با آرایه جستجو ['مدیر','manager'] و مقدار جایگزین 'کاربر' استفاده کنید و با پارامتر چهارم تعداد جایگزینیها را بگیرید. اگر میخواهید فقط کلمات کامل را تغییر دهید از preg_replace با الگوی یونیکد مانند /(?<!\p{L})(manager|مدیر)(?!\p{L})/iu استفاده کنید چون \b در متنهای غیرلاتین همیشه درست عمل نمیکند. توجه داشته باشید که str_ireplace معمولاً با UTF-8 کار میکند اما تبدیل حروف به بزرگ/کوچک برای زبانهای غیرلاتین به توابع mb_* یا تنظیم locale نیاز دارد. خروجی تابع را به شکل آرایهای شامل متن جدید و شمار جایگزینیها بازگردانید تا مصرفکننده بهراحتی به هر دو مقدار دسترسی داشته باشد.
گزارش