یک تابع پایتون بنویس که با استفاده از re.findall تمام هدرهای سبک Markdown (خط‌هایی که با یک یا چند '#' شروع می‌شوند) را از یک رشتهٔ چندخطی استخراج کند و سطح هدر و متن هر هدر را برگرداند.

1.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:03

0.0

برای حل این مسئله از ماژول re و تابع re.findall استفاده کنید؛ الگوی مناسب می‌تواند r'^(#+)\s*(.+)$' با پرچم re.MULTILINE باشد تا هر خط جداگانه بررسی شود. نتیجه را به صورت لیستی از تاپل‌ها (سطح، متن) برگردانید؛ سطح را از طول گروه اول (#) حساب کنید و متن را با strip پاک‌سازی کنید. این روش در پردازش اسناد برای تولید فهرست مطالب یا تحلیل متادیتا در ابزارهای اتوماسیون و مفسرها مفید است.

توسط پژوهشگر در 220 روز قبل ساعت 02:03
دسته بندی ها: Python Python for beginner
arash در 220 روز قبل ساعت 11:06

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

گزارش

1 پاسخ

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

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