یک اسکریپت پایتون بنویسید که هدرهای (comment) بالای یک فایل سورس —خط‌هایی که با # یا // شروع می‌شوند— را تا رسیدن به اولین خط خالی استخراج کند و تنها آن‌هائی را که با الگوهای مشخص (مثلاً "Version:*" یا "Module:*") مطابق با fnmatch هستند نمایش دهد.

3.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:45

0.0

فایل را با open() باز کرده و خط‌به‌خط بخوانید، تا اولین خط خالی ادامه دهید؛ برای تشخیص هدر از یک regular expression ساده مثل r'^\s*(#|//)\s*(.+)' استفاده کنید تا متن داخل کامنت را بگیرید. سپس از ماژول fnmatch برای مطابقت دادن متن هر هدر با الگوهای دلخواه (مثلاً "Version:*" یا "Module:*") بهره ببرید و موارد منطبق را چاپ یا در یک دیکشنری ذخیره کنید. نکات: قبل از مقایسه از strip() استفاده کنید، در صورت نیاز حساسیت به حروف را با lower() کنترل کنید و برای تست چند فایل نمونه بسازید تا اسکریپت در اتوماسیون یا پردازش سورس کد به‌کار بیاید.

توسط پژوهشگر در 202 روز قبل ساعت 02:45
دسته بندی ها: Python Python for beginner
nima در 202 روز قبل ساعت 08:36

برای استخراج هدرها تا رسیدن به اولین خط خالی، فایل را خط به خط بخوانید و تا آن خط ادامه ندهید. با استفاده از regex ساده‌ای مانند ^\s*(#|//)\s*(.+) می‌توانید محتوای داخل کامنت را بگیرید و سپس هر خط را با الگوهای موردنظر با fnmatch مقایسه کنید؛ مثلاً Version:* یا Module:*. قبل از مقایسه، متن را با strip() پاک کنید و برای مقایسه به صورت case-insensitive با lower() هم مقایسه کنید. نکته: ممکن است خطوط با BOM یا پایان‌خط‌های متفاوت یا زبان‌های دیگر مطرح شوند؛ بهتر است روی چند فایل نمونه تست کنید و رفتار اتوماسیون را بررسی کنید.

گزارش

1 پاسخ

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

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