یک تابع پایتون بنویس که با استفاده از re.findall تمام هدرهای سبک Markdown (خطهایی که با یک یا چند '#' شروع میشوند) را از یک رشتهٔ چندخطی استخراج کند و سطح هدر و متن هر هدر را برگرداند.
1.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:03 0.0
برای حل این مسئله از ماژول re و تابع re.findall استفاده کنید؛ الگوی مناسب میتواند r'^(#+)\s*(.+)$' با پرچم re.MULTILINE باشد تا هر خط جداگانه بررسی شود. نتیجه را به صورت لیستی از تاپلها (سطح، متن) برگردانید؛ سطح را از طول گروه اول (#) حساب کنید و متن را با strip پاکسازی کنید. این روش در پردازش اسناد برای تولید فهرست مطالب یا تحلیل متادیتا در ابزارهای اتوماسیون و مفسرها مفید است.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای استخراج هدرها با re.findall و MULTILINE خوب است که هر خط جداگانه بررسی شود؛ اما ممکن است خطوط با فاصله یا تب قبل از '#' شروع شوند. بنابراین الگوی معمولی را به r'^\s*(#{1,6})\s*(.+)$' تغییر بدهید تا این فضاها نادیده گرفته شوند. سطح هدر را با len(group1) محاسبه کنید و متن را با strip() تمیز کنید تا خروجی شما لیستی از تاپلهای (سطح، متن) باشد. این روش برای تولید فهرست مطالب یا تحلیل متادیتا در ابزارهای اتوماسیون مفید است.
گزارش