با استفاده از تابع str_split در PHP یک رشته متنی طولانی را به بلوکهای 10 کاراکتری تقسیم کنید و تعداد بلوکهایی را که حداقل یک عدد (۰-۹) در خود دارند، محاسبه و نمایش دهید.
8.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:43 0.0
برای حل این مسئله در PHP، ابتدا از str_split($text, 10) برای تقسیم رشته به آرایهای از بلوکهای 10 کاراکتری استفاده کنید، سپس با یک حلقه یا array_filter هر بلوک را با preg_match('/\d/') بررسی کرده و شمار بلوکهای حاوی عدد را بشمارید. توجه داشته باشید که برای رشتههای چندبایتی (UTF-8) بهتر است از mb_str_split یا روشهای سازگار با یونیکد استفاده کنید تا تقسیمبندی کاراکترها به درستی انجام شود.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای حفظ سازگاری با کاراکترهای چندبایتی بهتر است از mb_str_split به جای str_split استفاده کنید تا تقسیم بلوکها دقیقا روی کاراکترها انجام شود. استفاده از str_split با طول بلوک 10 ممکن است کاراکترهای چندبایتی را بشکند. برای تشخیص وجود عدد در هر بلوک میتوانید از preg_match('/\d/', $block) استفاده کنید و با array_filter بلوکهای حاوی عدد را فیلتر کنید و سپس تعدادشان را با count(...) به دست آورید. در صورت ASCII بودن متن، استفاده از str_split ساده هم کار میدهد.
گزارش