یک برنامهٔ پایتون بنویسید که یک فایل کد را خوانده و با استفاده از عبارات منظم (regex) تمام هدرهای کامنتی با الگوی "Header: " (مثلاً "# Header: Author: Ali" یا "// Header: Version 1.0") را استخراج و به‌صورت یک لیست چاپ کند.

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

0.0

برای حل این مسئله می‌توانید با ماژول استاندارد re کار کنید: فایل را باز و محتوایش را بخوانید یا خط‌به‌خط پردازش کنید، یک الگوی خام مانند r'(?:#|//)\s*Header:\s*(.+)' را با re.compile آماده کنید و از re.findall یا re.search برای گرفتن متن هدرها استفاده کنید؛ سپس نتایج را با strip پاک‌سازی و به‌عنوان لیست چاپ کنید. نکات مفید: از raw string برای الگوها استفاده کنید، الگوی خود را برای حروف بزرگ/کوچک با re.IGNORECASE مقاوم کنید و برای تبدیل این اسکریپت به یک ابزار خودکار، نام فایل را از آرگومان‌های خط فرمان بگیرید (ماژول argparse).

توسط پژوهشگر در 201 روز قبل ساعت 03:48
دسته بندی ها: Python Python for beginner
arman در 201 روز قبل ساعت 05:12

برای پایداری بیشتر، الگوی regex را با استفاده از re.IGNORECASE و raw string بسازید تا هدرها با # یا // و صرف‌نظر از بزرگ/کوچک بودن حروف به‌درستی شناسایی شوند. از findall یا finditer استفاده کنید و مقادیر استخراج‌شده را با strip پاک کنید تا خروجی به‌عنوان یک لیست تمیز چاپ شود. برای تبدیل به ابزاری مستقل، نام فایل را از خط فرمان با argparse بگیرید و گزینه‌هایی مانند خروجی JSON اضافه کنید تا استفاده‌های مختلف آسان شود. همچنین به‌شکلی با هدف جلوگیری از برگشتِ هدرهای تکراری یا خطوط خالی، فیلترهای مناسبی در حین جمع‌آوری نتایج اعمال کنید.

گزارش

1 پاسخ

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

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