Markdown Parsing
12345678910111213141516171819202122232425262728293031docstring = """ **This** is a **bold** text. *This* is an *italic* text. *`This`* is a *`code`* snippet. List: - 123 - 123 Numbered List: 1. Item 1.; 2. Item 2 """ docstring = docstring.strip() import re def format_docstring(docstring): docstring = re.sub(r'\*\*(.*?)\*\*', r'<b>\1</b>', docstring) # Заміна '**' на <b> і </b> docstring = re.sub(r'\*(.*?)\*', r'<i>\1</i>', docstring) # Заміна '*' на <i> і </i> docstring = re.sub(r'`(.*?)`', r'<code>\1</code>', docstring) # Заміна '*`' на <code> і </code> # Парсинг списку маркдаун з нумерацією docstring = re.sub(r'^\d+\. (.*)$', r'<li>\1</li>', docstring, flags=re.M) # Парсинг списку через "-" docstring = re.sub(r'\n- (.*)', r'\n<li>\1</li>', docstring) # Парсинг відступів docstring = docstring.split("\n") docstring = "<br>\n".join(docstring) docstring = docstring.replace("</li><br>", "</li>") return docstring print(format_docstring(docstring) + "\n")
Note
До списків треба додавати теги
<ul> </ul>
(unordered list) або<ol> </ol>
(ordered list) для створення звичайного (ul
), та нумерованого (ol
) списків.
Reversed Parsing
12345678910111213141516171819202122232425262728docstring = """ <b>This</b> is a <b>bold</b> text. <i>This</i> is an <i>italic</i> text.<br> <i><code>This</code></i> is a <i><code>code</code></i> snippet.<br> <br> List:<br> <ol> <li>123</li> <li>123</li> </ol> <br> Numbered List:<br> <ul> <ul><li>Item 1.;</li> <li>Item 2</li> </ul> """ docstring = docstring.replace("<br>", "") docstring = docstring.replace("<code>", "`").replace("</code>", "`") docstring = docstring.replace("<b>", "**").replace("</b>", "**") docstring = docstring.replace("<i>", "*").replace("</i>", "*") docstring = docstring.replace("<li>", "- ").replace("</li>", "") docstring = docstring.replace("<ul>\n", "").replace("</ul>\n", "") docstring = docstring.replace("<ol>\n", "").replace("</ol>\n", "") docstring = docstring.replace("<ul>", "").replace("</ul>", "") docstring = docstring.replace("<ol>", "").replace("</ol>", "") print(docstring)
Var allt tydligt?
Tack för dina kommentarer!
Avsnitt 2. Kapitel 1
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Awesome!
Completion rate improved to 1.2
Markdown Parsing
Svep för att visa menyn
12345678910111213141516171819202122232425262728293031docstring = """ **This** is a **bold** text. *This* is an *italic* text. *`This`* is a *`code`* snippet. List: - 123 - 123 Numbered List: 1. Item 1.; 2. Item 2 """ docstring = docstring.strip() import re def format_docstring(docstring): docstring = re.sub(r'\*\*(.*?)\*\*', r'<b>\1</b>', docstring) # Заміна '**' на <b> і </b> docstring = re.sub(r'\*(.*?)\*', r'<i>\1</i>', docstring) # Заміна '*' на <i> і </i> docstring = re.sub(r'`(.*?)`', r'<code>\1</code>', docstring) # Заміна '*`' на <code> і </code> # Парсинг списку маркдаун з нумерацією docstring = re.sub(r'^\d+\. (.*)$', r'<li>\1</li>', docstring, flags=re.M) # Парсинг списку через "-" docstring = re.sub(r'\n- (.*)', r'\n<li>\1</li>', docstring) # Парсинг відступів docstring = docstring.split("\n") docstring = "<br>\n".join(docstring) docstring = docstring.replace("</li><br>", "</li>") return docstring print(format_docstring(docstring) + "\n")
Note
До списків треба додавати теги
<ul> </ul>
(unordered list) або<ol> </ol>
(ordered list) для створення звичайного (ul
), та нумерованого (ol
) списків.
Reversed Parsing
12345678910111213141516171819202122232425262728docstring = """ <b>This</b> is a <b>bold</b> text. <i>This</i> is an <i>italic</i> text.<br> <i><code>This</code></i> is a <i><code>code</code></i> snippet.<br> <br> List:<br> <ol> <li>123</li> <li>123</li> </ol> <br> Numbered List:<br> <ul> <ul><li>Item 1.;</li> <li>Item 2</li> </ul> """ docstring = docstring.replace("<br>", "") docstring = docstring.replace("<code>", "`").replace("</code>", "`") docstring = docstring.replace("<b>", "**").replace("</b>", "**") docstring = docstring.replace("<i>", "*").replace("</i>", "*") docstring = docstring.replace("<li>", "- ").replace("</li>", "") docstring = docstring.replace("<ul>\n", "").replace("</ul>\n", "") docstring = docstring.replace("<ol>\n", "").replace("</ol>\n", "") docstring = docstring.replace("<ul>", "").replace("</ul>", "") docstring = docstring.replace("<ol>", "").replace("</ol>", "") print(docstring)
Var allt tydligt?
Tack för dina kommentarer!
Avsnitt 2. Kapitel 1