BBCode 转 HTML 转换器
BBCode 是论坛时代的轻量标记语言 — [b]bold[/b]、[url]、[quote]、[code]。phpBB、vBulletin、XenForo 和 SMF 论坛都曾使用它,这些平台上仍有数以百万计的旧帖子。这个转换器会解析 BBCode,并输出干净、有效的 HTML,方便粘贴到现代 CMS、静态站点,或不理解论坛标签的 Markdown-to-HTML 流程中。
如何转换 BBCode
-
1
粘贴你的 BBCode
可以是整篇帖子,也可以是片段。支持嵌套标签。
-
2
解析器对开闭标签进行分词
匹配的 `[tag]...[/tag]` 对会生成对应的 HTML 元素。
-
3
映射标签属性
例如 `[color=red]`、`[size=18]` 或 `[url=https://...]` 会变成内联样式或 `href` 属性。
-
4
复制 HTML
可直接用于博客文章、文档页面或论坛迁移。
支持的标签
| BBCode | HTML 输出 |
|---|---|
[b]text[/b] |
<strong>text</strong> |
[i]text[/i] |
<em>text</em> |
[u]text[/u] |
<u>text</u> or <ins> |
[s]text[/s] |
<del>text</del> |
[url]link[/url] |
<a href="link">link</a> |
[url=link]text[/url] |
<a href="link">text</a> |
[img]link[/img] |
<img src="link"> |
[quote]q[/quote] |
<blockquote>q</blockquote> |
[code]c[/code] |
<pre><code>c</code></pre> |
[list][*]a[*]b[/list] |
<ul><li>a</li><li>b</li></ul> |
[list=1][*]a[/list] |
<ol><li>a</li></ol> |
[color=red]t[/color] |
<span style="color:red">t</span> |
[size=18]t[/size] |
<span style="font-size:18px">t</span> |
[table]...[/table] |
<table>...</table> |
安全说明
BBCode 的设计相对安全;HTML 则不是。把用户提交的 BBCode 转成 HTML,正是很多论坛在 2005 年引入 XSS 的经典时刻。如果要发布转换后的输出:
- 对 BBCode 标签内的任何原始文本进行转义。
- 用白名单限制转换器输出的标签 — 不要把未知标签当作原始 HTML 转发。
- 校验
[url]和[img]中的 URL,阻止javascript:和data:协议。
这个工具会在转换过程中移除或中和任何类似脚本的 URL。
迁移整个论坛
迁移数千篇帖子时,把转换器作为流水线使用:将帖子导出为 BBCode → 通过此转换器处理 → 导入 HTML。抽查几十篇带有异常嵌套或自定义表情代码的帖子,因为这些可能不在标准标签集中。
BBCode 不能干净映射的内容
- 自定义论坛表情(
:D和:))— 保持原样并用 CSS 渲染,或单独预处理。 - 特定插件的标签(如
[spoiler]、[youtube])— 若已在自定义标签面板中列出则会处理;否则按字面文本输出。 - 合并或未闭合标签 — 解析器会尝试自动闭合,但格式严重错乱的输入可能丢失格式。
常见问题
有:Steam 社区帖子、vBulletin 和 XenForo 论坛、一些 wiki,以及许多旧版 phpBB 站点仍在使用。它也作为底层标记存在于少数游戏服务器控制面板中。
这个工具不能 — 请使用 HTML 转 BBCode 转换器。反向转换损失更大,因为 HTML 的表达能力远强于 BBCode。
默认情况下,未知标签会作为字面文本保留下来。如果你想保证输出完全干净,可以用严格(strict)模式将它们全部移除。
可以。[quote]、[list] 和 [code] 可以任意深度嵌套。解析器会追踪标签栈并正确闭合。
相关工具
随机颜色生成器
生成 1 到 50 个随机 HEX 颜色,查看色块,复制代码,并用于 CSS、测试或配色探索。
颜色调色板生成器
从基础 HEX 颜色生成单色、类似色、互补色、三角色或四角色调色板,并导出可直接复制的 CSS 变量。
HEX 颜色选择器
通过可视化方式选择颜色,并获取 HEX、RGB、HSL、HSV、CMYK 值以及黑白背景下的对比度。
JSON 格式化工具
粘贴 JSON,即可用 2 或 4 个空格美化排版,压缩成紧凑输出,或在复制结果前快速检查语法。
随机字母生成器
生成随机 A-Z 字母。选择数量、大写、小写或大小写混合,用于游戏、提示题或课堂活动。
随机调色板生成器
生成包含 2 到 15 个色块的随机调色板,选择鲜明、柔和、低饱和或深色风格,然后复制 HEX 代码或 CSS 变量。