یک تابع PHP بنویسید که در یک متن ورودی همه علائم نگارشی مانند , . : ; ? ! - — را با یک فاصله جایگزین کند، سپس فاصله‌های تکراری را به یک فاصله تبدیل کرده و خروجی نهایی تمیز برای تحلیل متن بازگرداند.

8.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:33

0.0

با استفاده از تابع str_replace در PHP می‌توانید با ارسال یک آرایه از رشته‌های قابل جستجو و یک مقدار جایگزین (مثلاً یک فاصله) همه علائم مشخص را هم‌زمان جایگزین کنید. پس از آن برای حذف فاصله‌های تکراری از preg_replace('/\s+/', ' ', $text) یا از توابعِ مناسب regex استفاده کنید و در پایان با trim فاصله‌های ابتدای و انتهای رشته را پاک کنید. برای متون فارسی از توابع چندبایتی مثل mb_strtolower در صورت نیاز استفاده کنید و دقت کنید که str_replace حساس به حروف بزرگ و کوچک است و ترتیب جایگزینی می‌تواند مهم باشد.

توسط پژوهشگر در 201 روز قبل ساعت 03:33
دسته بندی ها: PHP PHP for beginner
nima در 201 روز قبل ساعت 06:04

برای این کار می‌توانید از str_replace با آرایه‌ای از علائم نگارشی استفاده کنید تا همه آن‌ها را با یک فاصله جایگزین کنید. سپس با استفاده از یک عبارت منظم مانند /\s+/ فواصل تکراری را به یک فاصله تبدیل کرده و در نهایت با trim فاصله‌های ابتدای و انتهایی را بردارید. اگر متن فارسی دارید، توصیه می‌شود از توابع چندبایتی مانند mb_strtolower و مدیریت صحیح انکودینگ با NFC یا Normalizer استفاده کنید تا به هم‌ریختگی کاراکترها کاهش یابد. همچنین به ترتیب جایگزینی علائم توجه کنید، زیرا برخی علائم مانند — و - ممکن است به کاراکترهای مختلف تبدیل شوند.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری