正規表達式測試工具
即時測試正規表達式,標示比對結果與擷取群組。
正規表達式
JavaScript(ECMAScript)語法。不需要包含前後的斜線。
測試字串0 個比對
比對數
0
群組數
0
旗標
gm
支援 $1 編號回參照與 $<name> 具名回參照。
設計上就保護隱私。 所有處理都在你的瀏覽器本機完成。你的輸入不會被上傳、記錄,也不會存在任何伺服器上。
常見問題
這裡使用哪一種正規表達式方言?
JavaScript(ECMAScript)。目前的瀏覽器都支援後行斷言、具名群組、sticky 與 unicode 旗標。PCRE 專屬的語法(例如遞迴)則無法使用。
這些旗標是什麼意思?
`g` 會找出所有比對而不是停在第一個,`i` 忽略大小寫,`m` 讓 `^` 與 `$` 在行邊界也能比對,`s` 讓 `.` 也能比對換行,`u` 啟用完整的 Unicode 處理。
為什麼我的樣式什麼都比對不到?
最常見的原因是特殊字元沒有轉義。字面上的點、加號、括號與問號都需要前面加反斜線。請先看樣式欄位下方的錯誤訊息。
我的測試資料是私密的嗎?
是的。樣式與測試字串都只留在你的瀏覽器裡,永遠不會被傳送出去,也不會被記錄。
關於正規表達式測試工具
這個測試工具使用瀏覽器本身的 JavaScript 正規表達式引擎,所以行為跟你的程式碼會完全一致,不需要考慮方言差異。
比對結果會隨著你輸入即時標示在測試字串上,並列出索引與具名或編號的擷取群組。取代面板會預覽 String.replace 的輸出,包含 $1 編號回參照與 $<name> 具名回參照。
要留意的失敗模式是災難性回溯。對同一個字元類別使用巢狀量詞(例如 (a+)+$),在不符合的輸入上可能耗費指數級時間。這個測試工具會在比對執行過久時中止,而不是讓整個頁面卡死。