SKILL.md
---
name: markdown-table-cleaner
description: 清理和格式化 Markdown 表格。当用户粘贴的表格列宽混乱、对齐错位、分隔行不规范,或需要将杂乱数据整理为整洁的 Markdown 表格时使用。
---
# Markdown 表格清理技能
## 何时使用
当用户提供的 Markdown 表格存在以下问题时,应用本技能:
- 列宽不一致,竖线未对齐
- 分隔行(`|---|`)缺失或格式错误
- 单元格内容前后有多余空格
- 表格列数不一致(某行列数多出或少于表头)
## 处理步骤
### 1. 识别表格
定位用户文本中以 `|` 分隔的连续行。至少需要表头行 + 分隔行 + 数据行。
### 2. 校验结构
- 表头列数 = 分隔行列数 = 每一数据行列数
- 若列数不一致,告知用户具体哪一行存在问题,并询问以哪一行的列数为准
### 3. 标准化格式
- 每个单元格内容去除首尾空格
- 竖线前后各保留一个空格
- 分隔行统一为 `| --- | --- | --- |`(左对齐)
- 若原表格指定了对齐方式(`:---` 左对齐、`:---:` 居中、`---:` 右对齐),保留原对齐
### 4. 输出
仅输出清理后的表格,不做额外解释。若用户要求解释修改内容,在表格下方用简短列表说明变更。
## 边界情况
- 表格内含 `|` 转义字符(`\|`):保留转义,不将其视为列分隔符
- 表格为空(仅有表头):输出标准化表头 + 分隔行
- 列数严重不一致且无法推断:询问用户,不要自行猜测
## 示例
**输入:**
|姓名|年龄|城市 |
|张三|25|北京|
|李四 | 30 |上海|
**输出:**
姓名 年龄 城市 张三 25 北京 李四 30 上海
用途与依赖
作者没写,这些是平台读文件后整理的,以文件为准。
使用示例
请求:帮我把这个表格弄整齐: |姓名|年龄|城市 | |张三|25|北京| |李四 | 30 |上海|
预期
先检查表头、分隔行和每行列数,发现缺少分隔行、单元格空格不统一;随后补上 | --- | --- | --- |,去掉单元格首尾空格,并让竖线前后各留一个空格,最后只输出清理好的表格: | 姓名 | 年龄 | 城市 | | --- | --- | --- | | 张三 | 25 | 北京 | | 李四 | 30 | 上海 | 如果列数不一致,会先指出哪一行有问题,并询问以哪一行的列数为准。
- 适用场景
- 粘贴的 Markdown 表格列宽混乱、竖线没有对齐
- 表格缺少分隔行,或分隔行写法不规范
- 单元格内容前后带多余空格,需要统一整理
- 某几行的列数与表头不一致,需要定位问题行
- 需要把零散数据整理成可直接用的 Markdown 表格
- 表格中带有 \| 转义字符,需要保留而不是被拆成新列
- 输入
- 用户粘贴的、需要清理的 Markdown 表格文本
- 原表格希望保留的对齐方式(可选)
- 列数不一致时,指定以哪一行的列数为准(可选)
- 是否需要说明修改内容(可选)
- 输出
- 清理并标准化后的 Markdown 表格
- 用户要求时,表格下方附简短改动说明列表
- 列数不一致时,指出问题行的提示
- 运行环境
- 未说明
- 依赖
- 无

