使用方法
- 打开页面默认就带示例:文本框里是「今天去了 #咖啡馆 和 #书店 很开心 #生活」,模式选「提取模式」,结果区已经显示「#咖啡馆 #书店 #生活」,你不需要先输入任何东西。
- 把你的社媒文案、笔记或任意文本粘进文本框,页面会自动找出里面所有带井号的标签。
- 在文本框里按 Ctrl 加回车(Mac 上是 Cmd 加回车)也能立即提取,不必点按钮;结果区是当场算出来的,不是固定文案。
- 点「提取」按钮,页面按所选模式处理;点「复制结果」把当前标签串复制到剪贴板。
- 文本为空时会点名当前字段提示你补全,不会硬凑出一个空结果,避免你误以为提取成功。
- 本页不联网、不写本地存储,刷新即回到默认示例,所有处理都在你自己的浏览器里完成,输入内容不会离开设备。
这个提取话题标签工具能解决什么
提取话题标签工具 解决的是「一段文字里散落着好多 #话题,手动一个一个摘太累」这个日常麻烦。发微博、小红书、朋友圈时,文案里随手写了几个井号标签,发布前想核对有哪些、有没有重复,逐字找既慢又易漏。本工具一次全摘出来并去重。
第一类用途是社媒发布前的标签核对。你写完文案顺手埋了几个话题,发布前用本工具把全部标签拎出来,看看是否覆盖了要推的栏目,避免漏掉关键话题。
第二类用途是无标签文本的标签生成。碰到一段没写井号的随笔或产品描述,本工具会按词自动补井号,快速得到一组可用标签,省去你逐个想的麻烦。
第三类用途是话题去重。同一篇长文里可能重复写了 #咖啡馆 三次,本工具按出现顺序去重,保证最终标签列表里每个只出现一次。
第四类用途是内容归档。把多篇文章的标签批量提取出来,便于做话题维度的归类与检索,理解「按正则摘取加保序去重」后也能写脚本批量跑。
第五类用途是教学演示正则提取。讲文本处理时,学生常分不清怎么用正则抓井号词,本工具把匹配过程直观展示,配合下方对照表一看就懂。
第六类用途是活动话题收集。活动期间用户用同一话题打卡,你把收集到的文案丢进来,快速汇总出参与话题,便于统计与二次传播。
第七类用途是跨平台适配。不同平台对话题的格式要求略有差异,本工具先把井号标签规范摘出,你再按平台规则微调,比在原文里乱改更稳,方法论本身可复用。
原理和变量
本工具的核心是「正则匹配加保序去重」,不含随机成分,因此同一段输入永远得到同一组输出,可被手算复核。提取模式用正则 /#[\w\u4e00-\u9fa5]+/g 抓出所有以井号开头的标签(含中英文与数字),再按首次出现顺序去重;当文本里一个井号标签都没有时,自动切换到生成模式:按空白与标点把文本切成词、去空、给每个词补井号并去重。生成模式则始终走切词补井号这条路。空标签不会被产出。
为什么要保序去重?因为社媒话题常有先后主次之别,保留首次出现顺序更贴近原意;重复标签既占字数又显得不专业,去重能直接净化列表。下面变量表说明各环节含义。
| 变量 | 含义 | 说明 |
|---|---|---|
| text | 待处理文本 | 含或不含井号标签 |
| mode | 处理模式 | extract 提取 / gen 生成 |
| tags | 匹配标签 | 正则 /#[\w\u4e00-\u9fa5]+/g |
| words | 切出的词 | 无 # 时用于生成 |
完整示例
下面这组示例全部由页面算法原样得出,可直接对照你的手算。输入「今天去了 #咖啡馆 和 #书店 很开心 #生活」,提取模式先跑正则,命中 #咖啡馆、#书店、#生活 三个标签,按出现顺序去重后输出「#咖啡馆 #书店 #生活」。若把模式切到「生成模式」或文本不含井号(如「今天天气真好想去逛街」),则按标点切词得 [今天天气真好想去逛街],补井号输出「#今天天气真好想去逛街」。全程无随机、可逐字复核。
如果你想验证手算,只要把文本里所有 # 开头的连续词摘出来、去掉重复的,必然和本工具一致;无 # 时则按空格标点拆词加 #。这个正则摘取加去重法也是你手动复现结果的可靠办法。
今天去了 #咖啡馆
和 #书店 很开心 #生活
#咖啡馆 #书店 #生活
正则 /#[\w\u4e00-\u9fa5]+/g
#咖啡馆 #书店 #生活
已去重保序
示例输入:今天去了 #咖啡馆 和 #书店 很开心 #生活 提取模式命中:#咖啡馆 #书店 #生活 去重保序后:#咖啡馆 #书店 #生活
处理示例对照表
下表列出常见输入对应的处理结果(共 14 行),前 12 行直接展示,点「加载更多」展开剩余项。你可以一键导出 CSV(带 BOM,Excel 直接认中文)或复制 TSV 粘进表格软件。表里所有结果都由本页同一逻辑得出,无随机、可复核。
| 模式 | 输入示例 | 输出示例 |
|---|---|---|
| 提取 | 今天去了 #咖啡馆 和 #书店 很开心 #生活 | #咖啡馆 #书店 #生活 |
| 生成 | 今天天气真好想去逛街 | #今天天气真好想去逛街 |
| 提取 | #旅行 #美食 记录 #旅行 日常 | #旅行 #美食 #日常 |
| 生成 | 周末 爬山 看海 露营 | #周末 #爬山 #看海 #露营 |
| 提取 | 学习 #python 与 #python 笔记 | #python #笔记 |
| 生成 | 猫,狗,鱼 | #猫 #狗 #鱼 |
| 提取 | #健身 #读书 #健身 #写作 | #健身 #读书 #写作 |
| 生成 | 春 夏 秋 冬 | #春 #夏 #秋 #冬 |
| 提取 | city walk #城市 #漫步 | #城市 #漫步 |
| 生成 | 红 黄 蓝 绿 | #红 #黄 #蓝 #绿 |
| 提取 | #咖啡 #咖啡 #茶 | #咖啡 #茶 |
| 生成 | 北京、上海、广州 | #北京 #上海 #广州 |
| 提取 | #读书 #运动 #读书 #旅行 | #读书 #运动 #旅行 |
| 生成 | 苹果 香蕉 橙子 | #苹果 #香蕉 #橙子 |
结果边界与错误提示
- 待处理文本为空时,提示「待处理文本「」不合法:不能为空。」,页面不会自作主张编出一个空结果,避免你误以为提取成功。
- 文本只有井号却无后续字符(如「###」)时,正则匹配不到有效标签,会提示「未解析到任何话题或词语。」,不会输出空标签。
- 提取模式下若文本完全不含井号标签,会自动切换到生成模式按词补井号,这是预期行为而非错误。
- 重复标签会被去重,只保留首次出现,结果列表里每个标签唯一,避免社媒字数浪费。
- 结果区与错误区都带 role="alert" 语义,内容一变就会被屏幕阅读器播报;所有处理本地完成,不联网也不写存储,刷新即还原默认示例。
- 生成模式按空白与中文标点切词,连续分隔符不会产出空词,保证结果干净。
- 提取模式保留标签首次出现顺序,更符合原文话题的主次逻辑。
- CSV 导出在文件头写入 UTF-8 BOM(\ufeff),Excel 打开中文不会乱码;TSV 复制是纯制表符分隔文本,粘进任意表格软件都会自动分列。
常见问题
为什么有的标签被去掉了?
那是重复标签被去重了。本工具按首次出现顺序保留每个标签一次,后面再出现同名标签会被丢弃,保证列表干净不占字数。
中文标签能识别吗?
能。正则 /#[\w\u4e00-\u9fa5]+/g 同时覆盖英文字母数字与常用汉字,#咖啡馆 这类中文井号标签也能正确摘出。
没有井号时会怎样?
提取模式会自动切换到生成模式:按空白与标点把文本切成词,给每个词补井号并去重。你也可以在模式里直接选「生成模式」强制走这条路。
为什么结果每次都一样,没有随机?
本工具是纯正则匹配加去重,不含随机算法,同一段输入必然得到同一组输出。这样你才能在别处手算复核,也方便多文件保持一致。
我的文本会上传吗?
不会。所有文本只在浏览器本地处理,不联网、不写存储,刷新即还原默认示例,没有任何数据离开你的设备,可以放心粘贴真实文案。
导出的 CSV 为什么带 BOM?
因为 Excel 打开无 BOM 的 UTF-8 文件时常把中文显示成乱码,BOM 能让 Excel 正确识别编码。TSV 复制走剪贴板不经文件,所以不需要 BOM。
能处理带标点的长句吗?
能。生成模式按空白与常见中文标点切词,长句会被拆成若干词再补井号;提取模式则只抓井号标签,标点不影响匹配。
适合批量整理吗?
本页一次处理一段文本。若需批量,把多段文本分次处理即可;理解正则摘取加去重逻辑后,你也能写成脚本批量提取。