残念ながら、マークダウンの異なる「方言」の重大な矛盾のため、普遍的な解決策を作ることは問題があります。ここで、たとえば、[実装]（https://github.com/rapptz/discord.py/master/discord/utils.py）python-library [discord.py]（https：////で使用されるマークダウン// /pypi.org/project/discord.py/）、API不一致へのアクセスを簡素化します。ただし、たとえば、見出しやリストのスクリーニングは提供されません。

`` python
Reをインポートします


_markdown_escape_subregex = '|' .join（r '\ {0}（？=（[\ s \ s]*（（？<in（'*'、'」、 '_'、」、」| '| ）））

_markdown_escape_common = r '^>（？：>>）？\ s | \ [。+\] \（。+\）'

_markdown_escape_regex = re.compile（？p <markdown> {_ markdown_escape_subregex} | {_markdown_escape_common}） '、re.multiline）

_url_regex = r '（？p <url> <[^：>]+：\/[^/>]+> |（？：https？| Steam）：\/\/[^\ s <]+[^^ <]。、：; \ "\ '\] \ s]）'

_markdown_stock_regex = fr '（


def Escape_markDown（text：str、 *、as_needed：bool = false、nignore_links：bool = true） - > str：
    R "" Discordのマークダウンを逃れるヘルパー関数。
    パラメーター
    -------------
    テキスト::クラス：「str」
        Markdownから逃れるためのテキスト。
    as_needed :: class： `bool`
        逃げるのは何ですかこれ
        それがそうであれば、それが脱出チャーターを逃がさないことを意味します
        必要ではありません。`` ** hello ** `が逃げられます` \*\*hello ** `` `` `` `` `` `` `` `` `` `` `` `` `` `
        inst、 `\ \*\*hello \*\*` `` `` `。ただし、これが開くことができることに注意してください
        あなたはすぐに賢い構文の乱用に至るまで。デフォルトは「false」になります。
    Ingrore_links :: class： `bool`
        マークダウンを逃れるときにリンクを放っておくホワイトハー。例えば、
        テキストのURLに「_」などの文字が含まれている場合、それはwillus
        放っておきます。このオプションは、「as_needed」ではサポートされていません。
        デフォルトは「true」になります。
    戻り値
    --------
    ：クラス：「str」
        マークダウンの特殊文字を含むテキストは、スラッシュで逃げました。
    "" "

    as_neededではない場合：

        defの交換（一致）：
            GroupDict = match.groupDict（）
            is_url = groupdict.get.get（ 'url'）
            run is_url：
                IS_URLを返します
            return '\\' + groupdict ['markdown']

        regex = _markdown_stock_regex
        runore_links：
            regex = f '（？：{_ url_regex} | {regex}）'
        Retur re.sub（Regex、fallightement、text、0、re.multiline）
    それ以外：
        text = re.sub（r '\\'、r '\\\'、テキスト）
        return _markdown_escape_regex.sub（r '\\\ 1'、テキスト）

`` `

このコードをニーズに合わせて完成させることができます。たとえば、一定の「_markdown_stock_regex」の特殊文字のリストを拡張できます。たとえば、Webサイト[プログラムクリーク]（https://www.programcreek.com/python/?codeexample=escape+markdown）でいくつかの代替実装を見ることができます。
К сожалению, сделать универсальное решение проблематично из-за существенных расхождений разных «диалектов» языка Markdown. Вот, к примеру, [реализация](https://github.com/Rapptz/discord.py/blob/master/discord/utils.py) экранирования Markdown, используемая в Python-библиотеке [discord.py](https://pypi.org/project/discord.py/), упрощающей доступ к API Discord. Однако в ней не предусмотрено, например, экранирование заголовков и списков.

```python
import re


_MARKDOWN_ESCAPE_SUBREGEX = '|'.join(r'\{0}(?=([\s\S]*((?<!\{0})\{0})))'.format(c) for c in ('*', '`', '_', '~', '|'))

_MARKDOWN_ESCAPE_COMMON = r'^>(?:>>)?\s|\[.+\]\(.+\)'

_MARKDOWN_ESCAPE_REGEX = re.compile(fr'(?P<markdown>{_MARKDOWN_ESCAPE_SUBREGEX}|{_MARKDOWN_ESCAPE_COMMON})', re.MULTILINE)

_URL_REGEX = r'(?P<url><[^: >]+:\/[^ >]+>|(?:https?|steam):\/\/[^\s<]+[^<.,:;\"\'\]\s])'

_MARKDOWN_STOCK_REGEX = fr'(?P<markdown>[_\\~|\*`]|{_MARKDOWN_ESCAPE_COMMON})'


def escape_markdown(text: str, *, as_needed: bool = False, ignore_links: bool = True) -> str:
    r"""A helper function that escapes Discord's markdown.
    Parameters
    -----------
    text: :class:`str`
        The text to escape markdown from.
    as_needed: :class:`bool`
        Whether to escape the markdown characters as needed. This
        means that it does not escape extraneous characters if it's
        not necessary, e.g. ``**hello**`` is escaped into ``\*\*hello**``
        instead of ``\*\*hello\*\*``. Note however that this can open
        you up to some clever syntax abuse. Defaults to ``False``.
    ignore_links: :class:`bool`
        Whether to leave links alone when escaping markdown. For example,
        if a URL in the text contains characters such as ``_`` then it will
        be left alone. This option is not supported with ``as_needed``.
        Defaults to ``True``.
    Returns
    --------
    :class:`str`
        The text with the markdown special characters escaped with a slash.
    """

    if not as_needed:

        def replacement(match):
            groupdict = match.groupdict()
            is_url = groupdict.get('url')
            if is_url:
                return is_url
            return '\\' + groupdict['markdown']

        regex = _MARKDOWN_STOCK_REGEX
        if ignore_links:
            regex = f'(?:{_URL_REGEX}|{regex})'
        return re.sub(regex, replacement, text, 0, re.MULTILINE)
    else:
        text = re.sub(r'\\', r'\\\\', text)
        return _MARKDOWN_ESCAPE_REGEX.sub(r'\\\1', text)

```

Вы можете доработать этот код под ваши нужды, например расширив список специальных символов в константе `_MARKDOWN_STOCK_REGEX`. Несколько альтернативных реализаций можно посмотреть, например, на сайте [Program Creek](https://www.programcreek.com/python/?CodeExample=escape+markdown).