跳到主要內容
Tools

尋找與取代

在大量文字中尋找並取代,支援大小寫、全字比對與正規表達式群組參照,並標示符合處。

比對方式

0 個字元 · 1 行

使用說明

  1. 在「輸入文字」欄位貼上要處理的文字,也可以按「範例」看看效果。
  2. 在「尋找」輸入要找的文字,在「取代為」輸入新的文字;留空表示刪除找到的文字。
  3. 依需要勾選「區分大小寫」或「全字比對」,或把比對方式改成「正規表達式」。
  4. 右側(手機上在下方)會即時顯示取代後的結果,下方標示所有符合處並顯示找到幾個。
  5. 按「複製」或「下載」取得結果;按「全部取代」則把結果放回輸入欄位,方便接著做下一次取代。

常見問題

我的文字會被上傳嗎?

不會。尋找與取代都在你的瀏覽器中完成,文字不會離開你的裝置。

正規表達式的取代文字可以用哪些符號?

$1、$2…插入第幾個括號群組,$<名稱> 插入具名群組(例如 (?<year>\d{4}) 用 $<year>),$& 插入整個符合的文字,$$ 插入一個 $ 符號;另外 \n 代表換行、\t 代表 Tab、\\ 代表反斜線。一般文字模式下,取代文字會原樣插入,不解讀這些符號。

正規表達式用的是哪一種語法?

使用瀏覽器內建的 JavaScript 正規表達式,並固定開啟 Unicode(u)與多行(m)模式:. 會比對一整個 emoji 或中文字,^ 與 $ 比對每一行的開頭與結尾。Unicode 模式比較嚴格,例如 \- 這種多餘的跳脫寫法會被視為錯誤,錯誤訊息會顯示在欄位下方。

「全字比對」對中文有用嗎?

全字比對要求符合處的前後不是文字或數字,適合用空格分隔單字的語言,例如搜尋 cat 時不會找到 category。中文的詞與詞之間沒有空格,所以中文只有在前後是標點、空白或換行時才算「全字」,一般不需要勾選。

為什麼搜尋被停止了?

某些正規表達式(例如 (a+)+$)遇到特定文字時,需要嘗試的組合會呈指數成長,可能讓瀏覽器卡住很久。為了避免整個頁面當掉,正規表達式在背景執行,超過 3 秒就會自動停止並提示你。改寫成更明確的寫法(例如 a+$)通常就能解決。

文字很長時會不會變慢?

取代與計數都會處理全部的文字。為了讓畫面保持順暢,標示預覽只顯示前 10 萬個字元與前 1,000 個符合處,輸入停頓後才重新計算。

Windows 的換行(CRLF)會被改變嗎?

不會。使用 CRLF 換行的文字,會以一般換行比對後再轉回 CRLF,所以 ^ 不會插到 CR 與 LF 中間;在取代文字中輸入的 \n 也會跟著變成 CRLF。

鍵盤快捷鍵

/
搜尋工具(在工具頁會回到首頁的搜尋欄)
?
顯示這個說明
Esc
關閉對話框
Ctrl / ⌘Enter
執行工具的主要動作(支援的工具)

在輸入框中打字時,/ 與 ? 不會觸發快捷鍵。