یک اسکریپت پایتون بنویس که یک فایل Markdown را بخواند و با استفاده از re.finditer همه سرفصل‌هایی که با یک یا چند # شروع می‌شوند پیدا کند و یک فهرست عناوین (شماره‌گذاری شده و نشان‌دهنده سطح هر عنوان) تولید کند.

4.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 01:50

0.0

فایل را باز کنید و با یک الگوی منظم مثل r'^(#{1,6})\s*(.+)$' به همراه پرچم re.MULTILINE و تابع re.finditer همهٔ سطرهای هدر را پیدا کنید؛ طول گروه اول تعداد #ها را به عنوان سطح عنوان و گروه دوم متن عنوان را می‌دهد. از re.compile برای بهینه‌سازی، از enumerate یا شمارنده برای شماره‌گذاری و از تابع strip برای پاک‌سازی فضاهای اضافی استفاده کنید؛ خروجی می‌تواند با تورفتگی براساس سطح عنوان یا شکل "1.2.3 عنوان" نمایش داده شود.

توسط پژوهشگر در 220 روز قبل ساعت 01:50
دسته بندی ها: Python Python for beginner
reyhaneh در 220 روز قبل ساعت 11:52

یک نکته سریع: با استفاده از الگوی r'^(#{1,6})\s*(.+?)\s*(?:#+\s*)?$' و پرچم re.MULTILINE می‌توانید عناوین با یک تا شش # را به‌دست آورید و برای پایان‌گذاری #ها هم درست کار می‌کند. طول گروه اول سطح عنوان است و متن عنوان در گروه دوم است که با strip پاک‌سازی می‌شود. بهتر است الگو را با re.compile پیش‌ساخته و از enumerate برای شماره‌گذاری استفاده کنید تا خروجی منظم شود. نکتهٔ جانبی: قبل از پردازش، خطوط کدی که در بلاک‌های کد یا تگ‌های HTML هستند را فیلتر کنید تا سرفصل‌های کد را به‌طور ناخواسته در فهرست نیاورید.

گزارش

1 پاسخ

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

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