正規表示式測試器
在此瀏覽器中檢查 JavaScript 正規表示式的比對結果、擷取群組與取代結果。
正規表示式測試器使用說明
可用此瀏覽器的 JavaScript 正規表示式引擎(RegExp)查看模式在哪裡符合、擷取群組包含什麼,以及取代如何改變文字。
- 輸入模式並選擇需要的旗標。
- 貼上測試字串;停止輸入後結果會自動更新。
- 檢視符合項目與標示,然後加入取代字串並複製結果。
範例: (?<year>\d{4})-(?<month>\d{2}) $<month>/$<year>
限制
- 測試字串上限為 200,000 個字元(字串長度),且只會顯示前 1,000 個符合項目。
- 比對會在獨立的工作執行緒(Web Worker)中執行,1.5 秒後會停止並顯示逾時通知。
- 沒有 g 旗標時,只會找到第一個符合項目,也只會取代第一個符合項目。
- 符合空字串的模式會一次前進一個字元。
- 各瀏覽器支援的正規表示式語法可能略有不同。結果以您目前使用的瀏覽器為準。
常見問題
我的輸入會傳送到伺服器嗎?
不會。所有操作都在此瀏覽器中執行,您的輸入內容既不會被儲存也不會被上傳。重新載入後即消失。
看到「逾時」時該怎麼辦?
像 (a+)+$ 這類巢狀重複,只要輸入稍微變長,運算量就可能暴增(災難性回溯)。請簡化重複的寫法,或縮短測試字串。
它和其他語言的正規表示式相同嗎?
不同。此工具遵循 JavaScript 語法。Python、PCRE 等可能支援不同的功能與跳脫規則。
$1 和 $<name> 是什麼?
在取代字串中,$1 會變成第一個擷取群組的值,$<name> 會變成具名擷取群組的值。