لینک‌های مفید برای شرکت در مسابقه:

در زمان مسابقه می‌توانید سوال‌های خود را از قسمت "سوال بپرسید" مطرح کنید.

عبارات منظم


در این سوال از شما خواسته شده تا اطلاعات مفید را از متن استخراج کنید و یا تغییراتی بر روی آن اعمال نمایید. به این منظور شما باید سه تابع با مشخصات زیر بنویسید که هر کدام یک ورودی متنی دارد و پاسخ درخواستی را برمی‌گرداند:

  1. تابع findPhoneNumbers: این تابع شماره تلفن‌های همراه موجود در متن را تشخیص داده و در قالب یک آرایه برمی‌گرداند. شماره‌های همراه دو حالت دارد:

    • با ‍‍09 شروع شده و دارای ۱۱ رقم است.
    • با +9891 شروع شده و دارای ۱۳ کاراکتر است.

مثالی از ورودی و خروجی این تابع:

"In shomareye mane: 09101007567 vali behtare +989101007567 ro save koni. In 9111231234 va0914513 kar nemikonan."
PHP
 ["09101007567","+989101007567"]
PHP
  1. تابع findHashtags: تمامی کلماتی که با علامت #‍ شروع می‌شوند و تنها شامل اعداد و حروف انگلیسی است را تشخیص داده و در قالب یک آرایه از هشتگ‌ها برمی‌گرداند. این هشتگ‌ها باید شامل حداقل دو حرف به غیر از # باشند.

مثالی از ورودی و خروجی این تابع:

"Salam #goodMOrning khoobi#to #4yourlove #bi-man"
PHP
 ["#goodMOrning","#4yourlove"]
PHP
  1. تابع boldEmails:‍ این تابع تمامی ایمیل‌های موجود در متن را درشت‌دانه (بولد) می‌کند. این تابع تنها ایمیل‌هایی که منطبق بر فرمت username@domain.tld هستند را پشتیبانی می‌کند که:

    • نام کاربری تنها می‌تواند از کاراکتر انگلیسی، عدد، آندرلاین و نقطه تشکیل شود.
    • دامنه تنها می‌تواند از کاراکتر انگلیسی و یا عدد تشکیل شود.
    • tld یک کلمه سه حرفی از کاراکترهای انگلیسی است.
    • کاراکترهای انگلیسی می‌تواند کوچک یا بزرگ باشد

    مثالی از ورودی و خروجی این تابع: ‍‍

    "Soalatono az info_test@Quera.ir ya info@Quera123.com ya test_#23@alaki.core beporsid"
    PHP
"Soalatono az info_test@Quera.ir ya <b>info@Quera123.com</b> ya test_#23@alaki.core beporsid"
PHP

نکات عمومی🔗

نکته ۱: برای سرعت بخشیدن به حل این مسئله، می‌توانید از عبارات منظم به کمک توابع ‍‍preg_grep و preg_replace و یا موارد مشابه استفاده کنید و برای یادگیری قوانین عبارات منظم می‌توانید از این‌جا یا این‌جا کمک بگیرید.

نکته ۲: تمامی موارد درخواستی (شماره همراه/ایمیل/هشتگ) با فاصله از دیگر کلمات جدا شده‌اند و در غیر این صورت، نباید در نظر گرفته شوند.

نکته ۳: ترتیب اعضا در آرایه خروجی شما مهم نیست.

آنچه باید آپلود کنید🔗

هر سه تابع خود را در یک فایل با نام functions.php قرار دهید و به صورت فایل .zip آپلود کنید.

ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.