Python:在字符串中插入转义字符(单个“\”)以转义稍后的 Markdown 文本渲染

问题描述 投票:0回答:1

我希望我在这里忽略了一些简单的事情。我有一个函数可以在代码块(```)中向 Discord 发送一些调试消息。由于它可以引用过去的消息,因此以前的代码块可能会中断我的函数添加的新代码块的格式,并将消息在奇怪的位置分解为多个代码块,从而难以阅读。

我想只要做一个简单的解决方案:

msg.replace("```", "\```") 

但我发现事实并非如此。似乎如果我在替换文本中添加 1 个或 2 个反斜杠,python 似乎总是添加两个,这样不和谐就会显示一个反斜杠并呈现代码块,而不是按预期转义代码块。在控制台中打印字符串时也会出现两个反斜杠。

我已经尝试过:

msg.replace("```", "\```") 
msg.replace("```", "\\```") 
re.sub("```", "\```", msg) 
re.sub("```", "\\```", msg)

所有这些都会给出相同的结果,这会导致不和谐地打印反斜杠,然后无论如何渲染代码块。

如何格式化字符串,使其在代码块标记之前的字符串中留下单个转义字符?

python string discord.py format escaping
1个回答
0
投票
msg ="""
``` hello world
```
"""
msg = msg.replace("```","\```")

替换方法对我有用。我能够正常逃脱代码块。我使用默认的 IDLE IDE。

逃跑前:

enter image description here

逃脱后:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.