隐形字符检测器

揭示导致外观相同的行无法匹配的隐藏字符。粘贴您的文本,准确查看不间断空格、零宽空格、制表符和其他不可见字符藏匿的位置。

试试示例:
输入
输入或拖放文件
已发现隐形字符

在左侧粘贴文本以扫描…

隐形字符参考
标签码位名称可检测
[NBSP]U+00A0No-Break Space✓ 是
[ZWS]U+200BZero-Width Space✓ 是
[ZWNJ]U+200CZero-Width Non-Joiner✓ 是
[ZWJ]U+200DZero-Width Joiner✓ 是
[BOM]U+FEFFByte Order Mark✓ 是
[WJ]U+2060Word Joiner✓ 是
[CR]U+000DCarriage Return (\r)✓ 是
[TAB]U+0009Horizontal Tab✓ 是
[SHY]U+00ADSoft Hyphen-
[NNBS]U+202FNarrow No-Break Space-
[LRM]U+200ELeft-to-Right Mark✓ 是
[RLM]U+200FRight-to-Left Mark✓ 是
[RTLO]U+202ERight-to-Left Override✓ 是
[LSEP]U+2028Line Separator-
[PSEP]U+2029Paragraph Separator-
[HAIR]U+200AHair Space-
[HAN-F]U+3164Hangul Filler✓ 是
[BRL]U+2800Braille Pattern Blank✓ 是
[ISPACE]U+3000Ideographic Space-

常见问题

什么是隐形字符?
隐形字符是呈现为空白或不占用可见空间的 Unicode 码位,但在技术上与普通空格不同。它们频繁出现在从网页、PDF、电子表格和导出的数据库字段复制的数据中。

此工具检测的常见类型:
  • NBSP(U+00A0)- 外观与普通空格相同,但字符不同;由 HTML 编辑器和文字处理软件插入
  • ZWS(U+200B)- 完全不可见,不占用空间;是“相同”行无法匹配的首要原因
  • ZWJ / ZWNJ - 控制相邻字符是否连接;常见于阿拉伯语、波斯语和表情符号序列
  • BOM(U+FEFF)- 由 Windows 记事本、Excel 和 PowerShell 添加到文件开头;导致第一行永远不匹配
  • CR(U+000D)- 回车符;Windows CRLF 行尾的组成部分,导致末尾字符不匹配
  • TAB(U+0009)- 水平制表符;来自 TSV 文件、代码编辑器和终端复制粘贴
为什么两行看起来相同却不匹配?
普通空格(U+0020)和不间断空格(U+00A0)外观相同,但字符编码完全不同。比较列表时,带有尾部 NBSP 的条目与带有普通空格的相同条目不匹配--即使两者在屏幕上看起来完全一样。

零宽空格更难发现:它们不占用任何可见空间,因此在比较或数据库查找意外失败之前,您无法从视觉上判断它们是否存在。

此工具准确揭示每个隐形字符的位置,以便您在比较前清理数据。
隐形字符从何而来?
最常见的来源:
  • 网页 - HTML 经常使用 NBSP(  实体)进行排版;从网站复制粘贴时可能带入
  • PDF - 提取文本时,间距和行尾通常不一致
  • 电子表格 - Excel 和 Google Sheets 有时会在格式化的单元格中插入 ZWS
  • 数据库导出 - 某些数据库会在文本字段中保留来自源应用程序的 NBSP
  • 移动键盘 - 某些键盘在标点符号后插入 NBSP 而非普通空格
  • 文字处理软件 - Microsoft Word 等应用在格式化文本中使用不间断空格
如何从列表中删除隐形字符?
  1. 将文本粘贴到输入框中。注释面板会将每个隐形字符显示为彩色标签(如 [NBSP]、[ZWS]),以便您准确看到它们出现的位置。
  2. 从下方的已清理面板复制,该面板显示已删除所有隐形字符的相同文本。
对于持续的数据清理,列表数据清理器也有专门的“删除隐形字符”选项。
什么是不间断空格(NBSP)?
不间断空格(U+00A0)外观与普通空格相同,但字符编码不同(160 与 32)。它最初设计用于将相邻单词保持在同一行--例如,防止“100 km”在换行处被分开。

来源:HTML 编辑器(  实体)、Microsoft Word 等文字处理软件,以及某些在标点符号后插入它的移动键盘。

为何会造成问题:任何精确字符串比较都将 NBSP 视为与普通空格不同的字符,导致列表比较、数据库查找和导入中出现意外不匹配--即使文本在屏幕上看起来完全相同。
什么是零宽空格(ZWS)?
零宽空格(U+200B)完全不占用可见空间--对肉眼完全不可见。它最初设计用于标记不使用单词间空格的文字(如泰语或 CJK 文本)中的可选换行点。

来源:从网页抓取的文本、某些 CMS 平台的内容(WordPress 有时会插入它们)以及从富文本格式转换的文档。

为何会造成问题:由于它不可见,在比较、数据库查找或导入意外失败之前,您无法知道它的存在。它是“相同”行拒绝匹配的最常见原因。
可以在比较列表前使用此工具吗?
可以--首先清理隐形字符是使用比较两个列表或多列表比较工具之前最好的准备步骤之一。

从此工具复制已清理的输出并粘贴到比较工具中。两个工具也都有“忽略首尾空格”选项,可捕获行边界处的 NBSP--但隐形字符检测器更全面:无论隐形字符出现在行中的哪个位置,它都能查找并删除所有隐形字符。

Share this tool

Featured on ToolDirs
© 2026 ListDiff

Free online list and text processing tools.