Microsoft Word 的「顯示/隱藏」按鈕會顯示格式化符號,例如空格、定位點和段落符號,但它無法顯示文件中看起來像空白的六個常見 Unicode 不可見字元。例如不換行空格 (U+00A0)、零寬空格 (U+200B)、零寬不連字 (U+200C)、零寬連字 (U+200D)、文字連接符 (U+2060) 和韓文字母填充符 (U+3164) 會以真實文字的形式儲存在 Word 中,但無論在哪種檢視模式下,程式都不會為它們繪製任何字形。這就是為什麼一份文件看起來完全乾淨,卻仍然藏著數十個隱藏字元,悄悄地影響搜尋、排序、複製貼上、換行和螢幕閱讀器的發音。在 Word 中檢視不可見字元的可靠方式是先啟用內建的格式化符號,然後將可疑文字複製到本機的 Unicode 檢查工具,例如 不可見字元 工具,它會把這六個字元分別替換成可讀的標記,例如 [NBSP]、[ZWSP]、[ZWNJ]、[ZWJ]、[WJ] 或 [HF],並回報每個偵測結果的精確碼位和一為基底的編號位置。結合這兩種方法,就能顯示該工具檢查的六個常見不可見字元,並精確指出它們各自位於文字中的哪個位置。

Word 的「顯示/隱藏」實際顯示了什麼
Word 內建一項檢視功能,可在不更動底層文字的情況下顯示文件的結構。在「常用」索引標籤上點選 ¶ 按鈕(在 Windows 上按 Ctrl+Shift+8,或在 Mac 上按 Command+8),Word 就會開始在格式化符號上繪製可見的符號。兩個字之間的空格會變成一個置中的小圓點。定位點會變成一個向右的箭頭。段落符號會變成 ¶ 字元。分節符號、軟換行和隱藏文字旗標則會以各自的符號顯示,讓您清楚看到一段格式在哪裡結束、另一段又從哪裡開始。
這個檢視模式對編輯來說不可或缺,但它只能反映 Word 已知的格式化符號。它並不是 Unicode 檢查工具。像是零寬空格和文字連接符這類字元在 Word 使用的字型中沒有字形,因此「顯示/隱藏」沒有東西可以繪製。一個句子即使沒有顯示多餘的空格、箭頭或特殊符號,內部仍可能藏著一個不換行空格,使得該處無法如您預期般換行;或者藏著一個零寬連字,正悄悄地把兩個字元綁在一起。
Word 能顯示的內容與 Unicode 允許的內容之間的落差,正是您需要第二個工具的原因。「顯示/隱藏」能告訴您文件的格式化配置,而 Unicode 檢查工具能告訴您文字中實際存在哪些不可見的碼位。
藏在 Word 文件中的六個不可見字元
下表列出「不可見字元」工具檢查的字元、識別每個字元的精確 Unicode 碼位、在「顯示結果」方塊中放入的可讀標記,以及該字元在 Word 文件中的典型效果。
| 字元 | 碼位 | 標記 | 在 Word 中的典型效果 |
|---|---|---|---|
| 不換行空格 | U+00A0 | [NBSP] | 讓兩個字保持在同一行 |
| 零寬空格 | U+200B | [ZWSP] | 讓 Word 可在該精確位置中斷一個過長的字 |
| 零寬不連字 | U+200C | [ZWNJ] | 阻止兩個字母或表情符號相連 |
| 零寬連字 | U+200D | [ZWJ] | 強制兩個字母或表情符號相連 |
| 文字連接符 | U+2060 | [WJ] | 標示一個不可見的不可換行區域 |
| 韓文字母填充符 | U+3164 | [HF] | 看起來是空白,常被貼進姓名中 |
此檢查工具以 Unicode 碼位來計算位置,這代表表情符號和其他輔助字元會算成一個位置,而不是被拆成兩個 UTF-16 單位。每個標記旁邊的一為基底編號位置能讓您把偵測結果對應回貼上的文字中原本的位置,方便您區分兩個看起來完全相同的字串,或是在通過表單驗證時一直失敗的姓名中找到一個意想不到的連字元。
如何在 Word 中逐步檢視不可見字元
請依照以下工作流程,從一份有神秘間距或比較失敗問題的 Word 文件,整理出文字中潛藏的不可見碼位清單。
- 在 Word 中開啟格式化符號,這樣才能看到 Word 本身能顯示的內容。在「常用」索引標籤上點選 ¶ 圖示,或按 Ctrl+Shift+8。
- 選取您要檢查的段落。按 Ctrl+A 選取整份文件,或拖曳以反白特定的段落、標題或表格儲存格。
- 按 Ctrl+C 複製選取的內容。請避免使用剪下,因為剪下會在您檢查之前就把文字從 Word 中移除。
- 在新分頁中開啟「不可見字元」工具。該頁面在本機執行,您貼上的文字不會被上傳或儲存到任何地方。
- 使用 Ctrl+V 將複製的文字貼到檢查工具的文字方塊中。
- 閱讀「顯示結果」方塊和偵測表格。每一列會顯示可讀的標記(例如 [NBSP] 或 [ZWSP])、該字元所在的一為基底 Unicode 位置,以及精確的碼位。
- 判斷哪些偵測結果是有意義的、哪些是雜訊。在確認目的地的文字能安全移除那六個字元之後,再使用「移除列出的字元」,然後把清理後的結果貼回 Word。
將 Word 的「顯示/隱藏」與 Unicode 檢查工具搭配使用,以獲得完整覆蓋
「顯示/隱藏」與 Unicode 檢查工具能抓到不同的問題,兩者並用可讓您最清楚地掌握檔案中實際的內容。
| 功能 | Word 顯示/隱藏 | 不可見字元檢查工具 |
|---|---|---|
| 字與字之間的一般空格 | 顯示為置中的圓點 | 保留(不列出) |
| 定位點字元 | 顯示為向右箭頭 | 保留(不列出) |
| 段落或分行符號 | 顯示為 ¶ | 保留(不列出) |
| 隱藏文字旗標 | 以虛線底線顯示 | 不列出(不是 Unicode 字元) |
| 不換行空格 (U+00A0) | 不可見 | [NBSP] 並附上碼位 |
| 零寬空格 (U+200B) | 不可見 | [ZWSP] 並附上碼位 |
| 零寬不連字 (U+200C) | 不可見 | [ZWNJ] 並附上碼位 |
| 零寬連字 (U+200D) | 不可見 | [ZWJ] 並附上碼位 |
| 文字連接符 (U+2060) | 不可見 | [WJ] 並附上碼位 |
| 韓文字母填充符 (U+3164) | 不可見 | [HF] 並附上碼位 |
單獨使用「顯示/隱藏」只能確認一段落的空格和定位點數量是否正確;單獨使用檢查工具則能在任何一個它檢查的六個不可見碼位出現時,正確指出它們的名稱。兩者並用時,便能同時涵蓋 Word 文件的格式層和 Unicode 層,這也是您在決定要保留、編輯或移除不可見內容之前所需要的資訊。
何時該保留不可見字元,何時該移除
檢查工具上的「移除列出的字元」按鈕只會刪除上表中的那六個碼位。一般空格、定位點、換行、標點符號、字母、表情符號以及所有其他 Unicode 字元則會完整保留在原處。這種狹隘的行為很重要,因為並非每個不可見字元都是錯誤,移除錯誤的字元可能會損壞一份運作正常的文件。
不換行空格通常帶有刻意的排版意義,例如讓「10 kg」保持在同一行,或讓數字緊接在單位之後。文字連接符也能以同樣方式標示不可換行的區域。零寬連字和零寬不連字在具有字型塑形行為的語言中具有意義,也會用於表情符號序列中以控制哪些元件會組合在一起。這些字元的換行行為記載於 Unicode Standard Annex 14,因此如果您的 Word 文件包含阿拉伯文、波斯文、印地文或表情符號,在移除任何連字元之前請務必仔細閱讀該說明。韓文字母填充符可能會出現在從聊天訊息或論壇複製而來的姓名中,因為原作者用它們讓暱稱看起來是空白的;當這類姓名要被輸入到驗證表單時,通常可以放心移除。
一個實用的原則是:在點選「移除」之前,先讀完「顯示結果」方塊中的每一個標記,然後把清理後的結果貼回 Word,並執行「顯示/隱藏」以確認版面仍是您原本預期的樣子。
Word 文件中的不可見字元從哪裡來
上表中的字元在您自行輸入的文字中很少見,但在您從其他地方帶入的文字中卻很常見。網頁經常包含零寬空格和不換行空格,因為 HTML 會用它們來控制換行。PDF 匯出的檔案有時會在複合字詞中插入零寬連字。聊天應用程式和社群平台則經常在使用者名稱中反覆傳遞韓文字母填充符。觀察也發現,人工智慧產生的文字會在句子之間夾帶零寬字元和花引號字元。
當這類文字被貼到 Word 時,這些不可見字元也會一起跟著進來。它們能通過拼字檢查、能通過尋找與取代、也能通過大部分的追蹤修訂工作流程。當查詢詞彙與文件版本包含不同的不可見字元時,它們會影響搜尋結果;當螢幕閱讀器在非預期的連字元處停頓時,它們也會影響無障礙體驗。如果 Word 文件因為上述任何一個原因而出現異常,最快的診斷方式就是把可疑文字複製起來,透過「不可見字元」檢查工具執行,然後閱讀該工具回傳的標記與碼位。這個讀取步驟正是把一個神祕的間距錯誤,轉化為一個可以查詢、保留或移除的具體 Unicode 碼位的關鍵。
相關閱讀:如何使用瀏覽器工具移除 Word 中的換行符號。
相關閱讀:使用美式英文拼字工具將英文單字轉換為數字。