MDUtil

Markdown 转义字符

在符号前加反斜杠,就会原样显示这个符号:\* 显示星号,不会开始斜体。本文列出可以转义的字符,以及让符号显示为文字的其他方法。

简短回答

Markdown 怎么转义特殊字符?

在字符前面紧挨着加一个反斜杠 \:\*不是斜体\* 会显示星号,行首的 \# 也只是文字,不会变成标题。所有 ASCII 标点符号都可以这样转义。反引号里的内容不需要转义。

Markdown
\*不是斜体\*

\# 不是标题

`*原样显示*`

显示效果

*不是斜体*

# 不是标题

*原样显示*

转义的写法和示例

反斜杠、行内代码和 HTML 实体,这三种方法能处理所有情况。

可以转义的字符

所有 ASCII 标点符号前面都可以加反斜杠。字母和数字前面的反斜杠会原样显示。

Markdown
\\ \` \* \_ \{ \} \[ \] \< \> \( \) \# \+ \- \. \! \| \~

\n 和 \d 会保留反斜杠。

显示效果

\ ` * _ { } [ ] < > ( ) # + - . ! | ~

\n 和 \d 会保留反斜杠。

像列表或引用的行

开头像列表、标题或引用的行,加上反斜杠就会保持为普通文字。

Markdown
2024\. 是很好的一年

\+ 不是列表项

\> 不是引用

显示效果

2024. 是很好的一年

+ 不是列表项

> 不是引用

代码不需要转义

反引号和代码块里的字符都会原样显示,包括反斜杠。

Markdown
`**bold**` 和 `C:\Users\name`

显示效果

**bold** 和 C:\Users\name

HTML 实体

命名实体或数字实体可以显示会被当作 HTML 的字符,以及不好输入的符号。

Markdown
&lt;div&gt; 会显示成标签名。

&copy; 2026 &middot; 5 &times; 3 &middot; &#42;

显示效果

<div> 会显示成标签名。

© 2026 · 5 × 3 · *

表格里的竖线

表格单元格里的竖线必须转义,行内代码里也一样。

Markdown
| 运算符 | 含义 |
| --- | --- |
| `a \| b` | a 或 b |

显示效果

运算符含义
a | ba 或 b

美元符号

开启了数学公式的地方,$ 可能会开始一个公式。显示价格时要转义。

Markdown
苹果 \$5,梨 \$8。

显示效果

苹果 $5,梨 $8。

常见问题

Markdown 里哪些字符可以转义?

所有 ASCII 标点符号,包括 \ ` * _ { } [ ] < > ( ) # + - . ! | ~,以及 $、%、&、@ 等。字母、数字或空格前面的反斜杠会原样显示。

怎样显示反斜杠本身?

写两个:\\ 显示一个反斜杠。反引号里写一个就够了。

为什么反斜杠显示出来了?

字母、数字或空格前面的反斜杠不是转义,所以会原样显示。代码里的反斜杠也总会显示。

怎样把 HTML 标签当作文字显示?

用 &lt; 和 &gt;,例如 &lt;div&gt;,或者把标签放进反引号:`<div>`。

单词里的下划线需要转义吗?

通常不需要。CommonMark 中单词内部的下划线(例如 snake_case_name)不会开始斜体。

行首的数字怎样才不会变成列表?

转义句点:2024\. 是很好的一年。无序列表则转义开头的符号:\- 不是列表项。

怎样显示星号而不变成斜体?

在星号前加反斜杠:\*。星号什么时候会变成格式,可以参考 Markdown 斜体。

公式旁边怎样显示美元符号?

在 $ 会开始公式的地方写 \$,例如 GitHub、Obsidian 和 Markdown 在线编辑器。