import re
def escape_markdown(text: str) -> str:
"""Escapa caracteres especiais para o modo MarkdownV2 do Telegram."""
if not text:
return ""
# Caracteres a serem escapados
escape_chars = r'\_\*\[\]\(\)\~\`\>\#\+\-\|\=\{\}\.\!'
# Usa re.sub para adicionar uma barra invertida antes de cada caractere especial
return re.sub(f'([{re.escape(escape_chars)}])', r'\\\1', text)