یک برنامه پایتون بنویسید که یک فایل متنی حاوی سرفصلهای سبک Markdown (خطهایی که با یک تا شش '# ' شروع میشوند) را با استفاده از re.split به بخشها تقسیم کند و هر بخش را چاپ یا در فایل جداگانه ذخیره نماید.
10.0 بازدید آخرین ویرایش در 223 روز قبل ساعت 01:05 0.0
از ماژول re و تابع re.split استفاده کنید؛ الگوی پیشنهادی برای حفظ سرفصلها هنگام تقسیم: r'(?m)(?=^#{1,6}\s)' که با فلگ MULTILINE به خطوط نگاه میکند و با lookahead تقسیم را طوری انجام میدهد که سرفصلها به ابتدای هر بخش باقی بمانند. فایل را بخوانید، نتیجه split را فیلتر کنید (رشتههای خالی را حذف و strip بزنید) و سپس هر بخش را به صورت جداگانه چاپ یا با نامهای ترتیبی در فایلهای جدا ذخیره کنید؛ اگر میخواهید سرفصلها حذف شوند از الگوی r'(?m)^#{1,6}\s.*$' بدون lookahead استفاده کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
ایده خوب است که از re.split با الگوی نگاه به آینده (lookahead) استفاده کنید تا سرفصلها به ابتدای هر بخش بچسبند و نگهدارندهٔ آنها باشند. فراموش نکنید که فایل را با utf-8 باز کنید و نتیجه تقسیم را فیلتر کرده و strip کنید تا رشتههای خالی حذف شوند. اگر میخواهید سرفصلها حفظ شوند، از الگوی (?m)(?=^#{1,6}\s) استفاده و پرچم MULTILINE را فعال کنید؛ در مقابل برای حذف سرفصلها، از الگوی ^#{1,6}\s.*$ بدون lookahead استفاده کنید. برای فایلهای بزرگ، به خواندن تدریجی یا ذخیرهبخشی به فایلهای جداگانه با نامهای ترتیبی نگاه کنید تا حافظه به خوبی مدیریت شود.
گزارش