how to remove special characters in excel column
如何清除 Excel 欄位中的特殊字元

直接解答

若要從 Excel 欄位中移除特殊字元,請將該欄位的資料複製到「特殊字元移除器」中,對貼上的文字執行 Unicode 類別清理,然後將標準化後的結果貼回新欄位。這個清理工具採用標準化的 Unicode 通用類別值,因此貨幣符號、數學運算子、箭號、版權標記、多數表情符號碼點,以及底線這類連接標點都會依照類別移除,而不是憑字型外觀來猜測。字母、十進位數字、組合記號(例如 é 上方的尖音符)、空格和換行都會保留,這在欄位同時包含姓名、ID 和地址時至關重要。單次執行最多可接受一百萬個 UTF-16 碼單位,處理過程在瀏覽器本地端完成,因此文字不會被上傳、儲存或傳送到任何 API。螢幕上會顯示精確的清理輸出與被移除碼點的數量,讓您能在貼回 Excel 之前先確認變更內容。

Excel 欄位中的「特殊字元」是指什麼

在此清理工具的定義中,「特殊字元」指的是 Unicode 標準所定義的標準化類別 P(標點)和 S(符號)。這個範圍遠比單一鍵盤上印出的符號更廣:包含逗號、句號、驚嘆號、問號等一般標點;底線這類連接標點;包括 $、€、£、¥ 在內的貨幣符號;像 +、=、×、÷ 這類數學運算子;如 →、←、↑、↓ 的箭號;以及 ©、®、™ 等版權與商標標記;還有許多表情符號碼點。分類依據 Unicode 標準而非視覺判斷,因此這套規則在各種語言和鍵盤之間都能保持可稽核的一致性。清理工具並不維護一份人工整理的「怪字元」黑名單,而是依照類別進行篩選,因此無論欄位資料來自美式英文試算表、歐洲發票匯出,或含有表情符號的聊天訊息複製貼上,行為都會一致。

不會被移除的內容:任何文字系統的大小寫字母、0–9 的十進位數字、其他數字字元、組合記號(例如 é 上的尖音符或 ç 上的下尾鉤)、分隔符號,以及所有形式的空白字元,包括一般空格、定位點和換行。這個區分對 Excel 工作來說很重要,因為像 Hernández、Müller 和 Łódź 這類姓名即使含有某些讀者看起來不熟悉的變音符號,也應在清理後保留下來。以基底字母加組合記號表示的變音字元,在 JavaScript 中會被視為兩個碼點並完整保留,因為基底字母屬於 L 類別,組合記號屬於 M 類別,兩者都不會被篩除。

使用「特殊字元移除器」清理 Excel 欄位

  1. 在 Excel 中,選取您要清理的欄位中的儲存格。按下 Ctrl+C(Mac 上為 Cmd+C)複製這些儲存格。
  2. 在新分頁中開啟「特殊字元移除器」
  3. 將複製的儲存格貼到頁面上的輸入框中。該工具每次執行最多接受一百萬個 UTF-16 碼單位;若貼上的內容超過此上限,多餘的字元會在任何輸出產生之前被拒絕,且不會回傳部分結果。
  4. 選擇模式。選擇「僅符號」可移除貨幣、數學、箭號、表情符號等碼點,同時保留逗號和句號等標點;選擇「符號與標點」則一併移除這兩個類別,也會一併移除底線、句號、驚嘆號等記號。
  5. 點選「移除字元」。螢幕上會顯示清理後的文字以及精確的被移除碼點數量。編輯輸入或模式會立即清除舊結果,因此您看到的數字永遠反映目前的設定。
  6. 選取清理後的結果、複製,然後貼到 Excel 中的一個新欄位。若您的原始欄位有標題,請將結果貼在新欄位中該標題的下方。
  7. 儲存活頁簿之前請先檢視結果。移除貨幣符號可能會改變數值的意義,刪除標點可能會移動句子邊界,剝除表情符號則可能影響無障礙朗讀。請抽查首列、末列,以及中間幾列。

「僅符號」模式 vs. 廣泛模式

兩種模式的差異只在於是否同時移除 Unicode 標點(類別 P)與符號(類別 S)。當目標是去除裝飾性或非 ASCII 記號、同時保留一般標點時,「僅符號」模式是較保守的選擇;若您想要完全清理、類似識別碼的結果,廣泛模式則是更強力的選項。下方範例顯示同一筆輸入在兩種模式下的差異。

輸入:Hi, $5! 「僅符號」模式輸出:Hi, 5! — 貨幣符號($)被移除;逗號和驚嘆號這兩個標點則保留在輸出中。 廣泛模式輸出:Hi 5 — 貨幣符號、逗號和驚嘆號全部被移除;Hi 與 5 之間原本的空格會保留,且工具不會在被移除的標點處插入新空格。

面向「僅符號」模式廣泛模式(符號 + 標點)
貨幣符號($, €, £, ¥)移除移除
數學運算子(+, =, ×, ÷)移除移除
箭號(→, ←, ↑, ↓)移除移除
版權、註冊、商標(©, ®, ™)移除移除
符合的表情符號碼點移除移除
一般標點(逗號、句號、!、?、;、:)保留移除
連接標點(底線 _)保留移除
字母與十進位數字保留保留
帶變音符號的字母(é, ç, ü)保留保留
空白字元與換行保留,不合併保留,不合併

清理後:將結果放回 Excel

請將清理後的文字貼到一個新欄位,而不是覆寫原始欄位。保留原始欄位讓您能比較結果、復原錯誤的執行,或在第一次處理過於激烈或不足時,以不同模式重新執行清理工具。Excel 的「選擇性貼上 → 值」(Windows 為 Ctrl+Shift+V,Mac 為 Cmd+Shift+V)可避免從清理工具帶入任何殘留的格式。對於非常長的欄位,請貼到最上方的儲存格並確認列數與來源相符後再儲存;清理工具會保留換行,因此每個 Excel 列在輸出中都會保持在各自的行中。

對於多碼點的表情符號序列,清理工具會移除符合的符號碼點,同時保留不符合的格式碼點(例如結合符號或變體選擇符),因為工具是依類別篩選,而非依表情符號序列語法。若某欄位包含完整的情緒符號序列,使用表情符號叢集工具可能會得到更整齊的結果;若需要 Excel 中針對個別儲存格清理的專題指南,請參閱如何從 Excel 儲存格中移除特殊字元

限制、邊緣情況以及清理工具「不是什麼」

「特殊字元移除器」是一種受控的純文字清理工具,而非安全消毒器。SQL、HTML、Shell 命令、URL、檔名、帳號或身分驗證資料的驗證,必須使用針對目的端設計的白名單與伺服器端規則來處理;僅刪除被標記為特殊的碼點並不能取代這樣的白名單,因為安全輸入是由目的端所接受的內容來定義,而非由哪些字元看起來有裝飾性來定義。移除作業是精確的:符合的碼點會被刪除、數量精確無誤,且既有空白不會被刪減、合併或標準化。清理工具絕不會在被移除的標點或符號位置插入替代空格,因此原本僅以逗號分隔的兩個詞,在輸出中會變得相鄰;若這會破壞您資料集的可讀性,請手動或在第二輪 Excel 處理中補回空格。

輸入上限為一百萬個 UTF-16 碼單位。超過上限一個字元會在任何輸出產生之前被拒絕,空白的輸入也會被拒絕。移除數量計算的是符合的 Unicode 碼點,而非 UTF-16 碼單位,這對表情符號來說很重要:像是 🚀 這種位於輔助平面的表情符號,雖然 JavaScript 將其儲存為兩個 UTF-16 碼單位,但仍算作一個被移除的碼點。清理工具所使用的類別由 Unicode 通用類別值標準定義,比對作業則透過啟用 Unicode 旗標的 JavaScript Unicode 屬性逸出(property escapes)執行。關於 Unicode 類別定義與比對行為,請參閱Unicode 通用類別值參考資料。

延伸閱讀:如何在不使用公式的情況下於 Excel 列中重複文字