在 Word 文件中移除重複名字的方法,是把文字貼到一個以詞為單位 (word-level) 的去重工具中,該工具會保留每個詞第一次出現的版本,並刪除後續的重複項目,同時完全不更動標點符號、換行,以及保留下來那個詞原本的大小寫形式。這項工作和刪除試算表中重複的資料列、或從清單中挑出重複的整列,確實截然不同,因為在這裡,重複的部分存在於同一行或同一段落中,兩者之間往往只隔著一個多餘的空白、一個語音輸入的錯誤,或是一個剪貼失誤。像 John 這個名字在同一句話中出現兩次 ("John met John at the meeting") 就是最典型的例子,但同一種修正方式也適用於任何不小心被重複寫了兩次的詞。以詞為單位的去重之所以可行,是因為人名和所有詞一樣,都會被斷詞器 (tokenizer) 辨識為一串由字母、數字、撇號 (apostrophes),以及連字號 (hyphens) 所組成的序列;正是這條規則,讓工具能夠把 don't 和 well-known 視為單一單位,而不會把它們拆成支離破碎的兩半。

什麼算是重複的詞
在貼上任何文字之前,先弄清楚 移除重複詞 工具究竟如何判斷一個詞的開頭與結尾會很有幫助。所謂的詞,定義為一串由字母、數字、撇號,以及連字號所組成的序列,這和本站其他文字工具所使用的規則相同。這代表 don't 會被視為一個詞,而不是在撇號處被切成兩半;而 well-known 算是同一個詞,不是用連字號接起來的兩塊。相對地,逗號、句號、分號、問號、驚嘆號這類標點符號,絕不會被視為詞,也永遠不會被刪除。換行字元同樣不被更動;保留下來之文字的版面配置 (layout) 會原封不動地保留,包括你所寫下的任何段落斷行。
在預設設定下,比較是不區分大小寫的,所以 The 和 the 會被辨識為同一個詞。無論你第一次寫下的是哪個形式,那個形式就會保留下來,後續的重複項則會被刪除。如果你開啟區分大小寫,The 和 the 就會變成兩個不同的詞,兩者都會保留下來。第一次出現的一定是保留下來的那個;後面的複本則會消失,而在執行結束後會顯示究竟刪除了多少個,因此輸出較短的結果並非無法查驗,而是一清二楚的。
如何在 Word 中移除重複名字
整個工作可分為三個明確的步驟,每一步都對應到頁面上可見的控制項。
- 貼上含有重複名字或詞的文字。 複製一個段落、一份與會者清單、一行逐字稿,或任何含有重複條目的文字區塊,再貼進輸入欄位中。該工具在一次線性掃描中最多可讀取一百萬個字元,所以即使是一份很長的 Word 文件,只要先把內文複製出來,處理起來依然相當快速。
- 選擇是否區分大小寫,以及是否只合併緊鄰的重複詞。 第一個開關用來開啟或關閉不區分大小寫的比較;第二個開關則會啟用「僅限連續」模式 (consecutive-only mode),這正是處理像 the the 或 very very 這種典型編輯錯誤時該使用的設定。如果要對整份文件中重複的名字進行完整清理 (即使同一個名字出現在不同的句子或段落中),請把「僅限連續」關閉,這樣每一個後續出現的重複項才會被刪除。
- 檢查究竟刪除了多少個重複項,然後複製清理後的文字。 結果面板會回報實際被刪除的重複項數目,作為本次執行的一份收據 (receipt)。把清理後的文字複製回 Word 文件中原本的位置。
「僅限連續」模式 vs. 全域模式
兩個開關決定了清理作業的嚴格程度,而選擇正確的設定很重要,因為這兩種模式是為不同的工作所設計。下表針對最常見的情境對兩者進行比較。
| 情境 | 「僅限連續」模式 | 全域模式 (關閉「僅限連續」) |
|---|---|---|
| 打字錯誤:the the | 合併為 the | 合併為 the |
| 跨標點強調:no, no | 原封不動保留 | 第二個 no 被移除 |
| 同一段落中同一名字出現兩次:John ... John | 原封不動保留 | 第二個 John 被移除 |
| 同一個名字出現在不同句子中 | 原封不動保留 | 後續的 John 全部被移除 |
| 含一個重複詞的關鍵字清單 | 僅合併相鄰的重複項 | 重複的詞會被完全移除 |
| 語音輸入錯誤:I I went | 合併為 I | 合併為 I |
關鍵的差別在於重複項之間的間距。「僅限連續」模式只在間距是空白時才會觸發,因此標點符號會形成一道屏障,像 no, no 這種刻意強調的片語便會受到保護。全域模式則會對同一個詞的任何後續出現位置 (無論在文字中的何處) 進行處理,這正好是當重複的名字分散在 Word 文件的不同段落或章節時你所需要的行為。如果只是為了修正打字錯誤,「僅限連續」是較安全的預設選項,因為它不會動到刻意重複的內容。
重複詞清理真正派上用場的情境
以詞為單位的去重是那種聽起來微不足道,但實際坐下來對一段落手動處理時才會發現棘手的工作。以下列出幾個它能發揮效益的情境:
- 清理關鍵字清單。 標籤集、meta 關鍵字組合,以及 SEO 關鍵字清單,常因從多個來源彙整而成而讓同一個詞溜進來兩次。全域模式會移除第二個複本,同時保持你的清單結構完整。
- 整理逐字稿與語音輸入文字。 語音轉文字的輸出經常會產生 the the、I I went 這類猶豫造成的殘留片段。「僅限連續」模式正好能精準處理這些,而不會更動你真正想寫的內容。
- 為標籤與搜尋查詢集合去除重複。 當同一個查詢在一份記錄檔 (log) 或標籤傾印 (tag dump) 中出現多次時,第二次的出現會膨脹計數並干擾分析。
- 修復剪貼造成的意外。 在草稿中因部分貼上而意外出現兩次的片語,會以重複詞的樣貌呈現。全域模式可以一併清掉。
- 與以行為單位的去重工具搭配使用。 若要建立更深入的資料清理流程,可先執行 移除重複行 來刪除重複的資料列,再把保留下來的各行送入以詞為單位的清理作為下一個階段。
此工具不會更動的內容
對一個清理工具而言,誠實的說明應該點出它的限制,因為正是這些限制讓輸出值得信賴。以下三件事是這個工具刻意不會做的:
- 它不會判斷語意。 兩個恰好意思相同的不同詞,都會被保留下來;去重是結構性的,不是語意上的,所以 John 和 Jonathan 會被視為不相關的名字。
- 它不會移除重複的片語。 只有重複的單一詞會被刪除;像 John Smith John Smith 這類多詞的重複會原保留來,因為它們不是單一詞元 (token)。
- 它不會對空白進行超出「每個被刪除詞一個分隔符」以外的標準化。 當一個重複項被刪除時,剛好會有一個相鄰的空白或定位點 (tab) 隨之被移除,如果有的話就是詞前面的那一個,否則就是後面的那一個。換行符絕不會被消耗掉,保留下來的部分其餘版面配置也完全不動。如果一個重複項原本夾在兩個空白之間,輸出會留下一個空白,而不是悄悄改寫你的空白格式。
冪等、可查驗且重視隱私
這三項特性讓本工具可以安全地放進反覆執行的清理流程中。首先,它在每一種選項組合下都具有冪等性 (idempotent):把輸出再丟進工具中跑一次,結果不會改變,所以你可以放心地呼叫任意次數,而不必擔心會產生意外漂移 (drift)。其次,結果會回報實際移除的重複項數目,把清理作業從黑盒子變成一個可供查驗的步驟;當你需要向同事、編輯或審閱者展示文件究竟改動了哪些地方時,這點格外實用。第三,所有運作都在你的瀏覽器中進行;文字絕不會被上傳、絕不會被儲存,也絕不會與任何帳號綁定,這對於逐字稿、內部草稿,以及任何你不會貼到雲端服務的文字來說,是非常重要的。
嚴格的詞元規則、兩個可見的開關,以及一份數值化的收據,三者結合起來,使得「如何在 Word 文件中移除重複名字」這個問題,能在一次處理中就得到解答,而不是淪為一項手動苦差事。
延伸閱讀:如何逐步進行反向文字搜尋 (Reverse Word Search)。
延伸閱讀:如何安全地從文字檔中移除特殊字元。