尋找與取代
在大量文字中尋找並取代,支援大小寫、全字比對與正規表達式群組參照,並標示符合處。
0 個字元 · 1 行
快捷鍵:Ctrl/⌘ + Enter 全部取代
使用說明
- 在「輸入文字」欄位貼上要處理的文字,也可以按「範例」看看效果。
- 在「尋找」輸入要找的文字,在「取代為」輸入新的文字;留空表示刪除找到的文字。
- 依需要勾選「區分大小寫」或「全字比對」,或把比對方式改成「正規表達式」。
- 右側(手機上在下方)會即時顯示取代後的結果,下方標示所有符合處並顯示找到幾個。
- 按「複製」或「下載」取得結果;按「全部取代」則把結果放回輸入欄位,方便接著做下一次取代。
常見問題
我的文字會被上傳嗎?
不會。尋找與取代都在你的瀏覽器中完成,文字不會離開你的裝置。
正規表達式的取代文字可以用哪些符號?
$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。