從Outlook中取出電子郵件地址最快的方法,是把你郵件、簽名檔,或匯出的聯絡人備註的文字內容複製起來,再交給一個以瀏覽器為基礎的Email Extractor來處理。這個工具會讀取你貼上緩衝區中已經有的字元,找出任何符合有文獻記載的ASCII電子郵件格式的內容,移除同一個地址的大小寫變體,並每行回傳一個地址,讓你可以複製回Outlook、試算表,或CRM系統。整個過程不會開啟任何PST檔案、不會查詢任何Outlook設定檔,你貼上的文字也絕對不會被上傳。這讓這個做法,在你只需要從郵件內文或備註中取出聯絡人清單、而不是進行完整信箱搬遷時,非常實用。代價是,這個擷取工具刻意設計得很窄:它是一個模式辨識器,而不是一個地址驗證器。它會拒絕像[email protected]或[email protected]這種明顯的垃圾內容,也會拒絕把https://[email protected]這種網址中的使用者部分,當成聯絡人來處理。事先了解這些限制,正是讓一次500,000字元的貼上內容,不會變成一份誤導人的清單的關鍵。

從Outlook郵件文字中擷取電子郵件地址
Outlook把郵件儲存在PST或OST檔案中,但大多數「給我聯絡人清單」的工作,實際上並不需要那種層級的存取權限。真正重要的內容——寄件者、收件者、副本與回覆地址欄位、簽名檔區塊、內文文字,以及聯絡人備註——都是可以用Ctrl+C複製的純文字。一個實際的擷取流程是這樣的:在Outlook中挑出你在意的郵件或聯絡人、複製相關文字,再把貼上的內容交給一個以瀏覽器為基礎、掃描電子郵件格式字元的擷取工具。
這種做法,避開了大家對PST工具常見的抱怨:不需要管理任何桌面安裝程式、不需要授予任何Outlook設定檔存取權限,也沒有損毀現用信箱的風險。這個擷取工具永遠不會碰觸磁碟上的Outlook檔案。它只會分析你按下「擷取」時,文字區域中已經存在的字元;在擷取當下,不會從剪貼簿中拉取任何內容。如果貼上的內容選錯了,你可以直接編輯文字區域再試一次,不需要重新啟動任何東西。
就Outlook而言,最容易複製的來源包括:
- 開啟資料夾的閱讀窗格——選取一封郵件並按下Ctrl+C,即可擷取內文。
- 雙擊開啟的郵件視窗,這裡除了相同的文字之外,還會顯示標頭欄位。
- 聯絡人卡片中的「備註」欄位,地址通常是以自由格式貼在這裡。
- Outlook簽名檔預覽畫面,它底層其實就是純文字。
- 先前匯出的聯絡人.txt或.csv檔案,重新在記事本中開啟。
瀏覽器版電子郵件擷取工具如何讀取貼上的文字
一個以瀏覽器為基礎的Email Extractor,會在目前的分頁中執行候選項目的掃描。它尋找的是一種定義明確的ASCII格式,而不是嘗試涵蓋RFC 5322所允許的每一種奇特信箱格式。這種格式涵蓋一般網址所使用的本地字元:字母、數字、句點、底線、百分比符號、加號與連字號;一個小老鼠符號(@);以及一個至少有兩個標籤的DNS風格網域。一旦擷取到候選項目,一個有文獻記載的實用驗證器,就會檢查是否只有一個小老鼠符號、本地部分是否在64字元以內、句點的位置、總長度是否在254字元以內、標籤規則,以及最後一個標籤是否為2到63個ASCII字母,並拒絕使用punycode的頂層網域。沒通過的候選項目,會被計為「已拒絕」,而不是被悄悄截斷。
去重是依照小寫的鍵值來進行的,但保留下來的拼法,是你貼上內容中第一次出現的那一種。因此,如果你的文字中先出現[email protected],接著出現[email protected],輸出結果會保留[email protected],並把第二個當成重複項目捨棄。排序是另一個獨立的切換選項:你可以讓清單保持依「首次出現」的順序,也可以比較小寫鍵值,重新依A到Z排列,方便視覺檢視。最終結果是每行一個地址,可以直接貼進Outlook聯絡人、Excel欄位,或用於匯入的CSV欄位。
用五個具體步驟,從Outlook中取出電子郵件地址
- 開啟Outlook,選取你想要處理的郵件或聯絡人。你不需要標記任何特殊模式;閱讀窗格、郵件視窗,以及聯絡人備註欄位,都會呈現可選取的文字。
- 把相關文字複製到剪貼簿中。在閱讀窗格中按一次Ctrl+C,即可擷取郵件內文;先開啟郵件,則同時能取得標頭欄位。如果聯絡人清單已經匯出成文字檔,就在記事本中開啟.txt或.csv檔案並全選。
- 貼進Email Extractor的文字區域。留意畫面上顯示的字元計數器。超過500,000字元的輸入內容不會被處理,而是會直接回傳明確的錯誤訊息,因此如果接近上限,請把貼上的內容拆開處理。
- 選擇輸出順序。選擇「首次出現順序」,可以讓地址依照第一次出現的順序排列,同時大小寫變體仍會合併成一個結果;如果想要一份便於檢視的清單,可以選擇「不分大小寫的A到Z排序」。
- 點選「擷取電子郵件」,查看不重複、重複,以及被拒絕的數量,接著點選「全部複製」,把每行一個地址的內容放進剪貼簿。再把它貼回Outlook聯絡人、Excel工作表,或CSV欄位中。
這個擷取工具會接受與拒絕什麼
這個驗證器是一個實用版本,而不是一個完整的RFC 5322解析器。下表顯示它如何處理你會在Outlook內容中看到的常見格式。
| 範例輸入 | 結果 | 原因 |
|---|---|---|
| 接受 | 標準ASCII信箱 | |
| 先出現[email protected],接著出現[email protected] | 一個結果,寫成[email protected] | 不分大小寫的去重,會保留第一種拼法 |
| mailto:[email protected] | 接受,寫成[email protected] | mailto在設計上就是一個聯絡目的地 |
| https://[email protected]/private | 整個候選項目被拒絕 | URL中的使用者資訊不是聯絡地址 |
| [email protected] | 拒絕 | 本地部分出現連續的句點 |
| [email protected] | 拒絕 | 網域標籤以連字號開頭 |
| [email protected] | 拒絕 | 網域標籤以連字號結尾 |
| [email protected] | 拒絕 | 兩個句點之間出現空白標籤 |
| [email protected] | 拒絕 | 最後一個標籤少於兩個字母 |
| alice@[127.0.0.1] | 拒絕 | 不支援用方括號表示的網域字面值 |
| очень@example.com | 拒絕 | 不支援Unicode信箱 |
常見的周邊文字標點符號——逗號、分號、右括號、引號,以及驚嘆號——會自然地讓掃描停止,而句尾的句點或刪節號,則會在驗證之前先被移除。直接接在類似地址格式後綴上的Unicode字元,會讓整個候選項目被拒絕,而不是只回傳ASCII的尾端部分。
限制、錯誤,以及邊界情況會發生什麼事
有兩個硬性限制,主宰著整個運算過程。輸入文字最多可以容納500,000個JavaScript字元;文字區域不會在那裡悄悄停止接受輸入,因此可見的計數器會標示出超出上限的數值,擷取動作則會回傳錯誤,而不會處理或截斷文字。輸出結果最多可以容納1,000個不重複的地址;如果貼上的內容會產生更多結果,這項操作會以明確的訊息失敗,而不是只顯示前面一千筆的部分結果。
在你貼上一大段文字之前,還有幾個值得了解的行為:
- 編輯輸入內容或變更排序方式,會清除先前的清單、錯誤訊息,以及複製狀態,因此先前的結果不會停留在畫面上、讓人誤以為它符合目前的文字內容。
- 擷取失敗時,會先清除舊的結果,再回報問題,讓畫面保持誠實的狀態。
- 「全部複製」是以非同步方式使用瀏覽器剪貼簿,而且只會針對目前的結果回報成功;編輯內容或離開頁面,都會讓任何正在進行中的複製狀態更新失效。如果無法取得剪貼簿權限,輸出結果仍然可以手動選取複製。
- 這個工具不會抓取連結、檢查頁面、跟隨轉址、查詢DNS、測試SMTP伺服器,或寄送驗證郵件——它只會分析文字區域中已經存在的字元。
使用結果之前先審查
擷取是一種模式比對,而不是驗證。輸出清單上的一行,只能證明貼上內容中的某個字串,符合了有文獻記載的實用ASCII格式。它並不能證明這個信箱確實存在、這個地址能夠收信、擁有者已經同意被聯絡,或這個地址不是拋棄式或職能帳號。
在把這個結果當成聯絡人清單使用之前,請先審查每一個地址的同意情況、隱私義務、抑制清單、司法管轄要求,以及來源。對於高風險的帳號建立或送達率相關工作,請把輸出結果搭配適當的確認、DNS檢查、退信處理,以及人工審查,而不要把模式比對當成證明。這個驗證器所套用的DNS風格標籤規則,遵循RFC 1035第2.3.1節所訂定的建議名稱語法,因此一個被接受的網域格式,只是看起來合理,並沒有經過驗證。
擷取之後,實際的做法是把這份以換行分隔的清單,貼進Excel或記事本中,掃視是否有明顯誤判的內容,捨棄任何你不想寄信的職能地址,然後才把整理乾淨的清單,載入回Outlook聯絡人或你的CRM系統。
如需更深入的說明,請參閱在Excel中移除超連結文字,並在本機端擷取Word連結。
如需更深入的說明,請參閱如何在Content Warning遊戲中取得Lenny Face表情符號。