正在準備工作區…
輸入
輸出
結果將顯示在這裡。
使用方法
- 輸入不含 / 分隔符號的運算式,選擇旗標並加入測試文字。
- 手動執行,查看輸入標示和 JSON 報告。
- 選擇結果以定位或複製,也可下載完整報告。
測試 JavaScript 正則運算式
在本機文字上測試 JavaScript RegExp,無須傳送到伺服器。報告包含比對內容、從 0 開始的 UTF-16 位置、編號擷取群組和具名群組。
旗標遵循瀏覽器的 JavaScript 規則,包括全域、多行錨點、Unicode、黏著比對及選用的群組索引。
閱讀比對結果和擷取群組
輸入區會標示比對結果,可逐項導覽並選取精確原文,包括原始換行。未比對到的選用群組在 JSON 中表示為 null。下方範例展示內容與位置,完整報告也包含群組。
運算式與文字
pattern = (?<word>\p{L}+)
flags = gu
text = Ada and Lin報告摘錄
[{"value":"Ada","index":0,"end":3},
{"value":"and","index":4,"end":7},
{"value":"Lin","index":8,"end":11}]展示三個比對內容及其 [開始, 結束) UTF-16 位置。
旗標與 Unicode 位置
u 和 v 不可同時啟用。不含 g 時只報告首次比對。空的全域比對在 u 或 v 模式下依碼位前進,否則依 UTF-16 單元前進。零長度比對顯示在報告中,不顯示彩色文字範圍。
有界的本機執行
正則須手動執行,獨立 Worker 限時 2 秒,最多報告 500 個結果,並明確標示截斷。語法錯誤保留瀏覽器的技術原因。本工具使用 JavaScript 語法,不模擬 PCRE、Python 或伺服器引擎。
處理限制
文字轉換支援 5 MiB 輸入、100,000 個邏輯行、20 MiB 輸出及 10 秒處理時間。正則支援 1 MiB 輸入、4,096 個 UTF-16 單元的運算式、最多 500 個結果及 2 秒限時。檔案須為 UTF-8,全部在本機處理。
?
常見問題
正則在伺服器執行嗎?
不,在可終止的瀏覽器 Worker 中執行。
為何測試被停止?
達到了 2 秒限時,請簡化運算式或縮小文字。
位置如何計數?
從 0 開始的 UTF-16 單元,與 JavaScript 字串索引一致。
運算式無效會清空文字嗎?
不會,保留輸入,上次報告會被標示,成功執行前停用匯出。
支援所有正則語法嗎?
不支援,語法和旗標以目前瀏覽器的 JavaScript 引擎為準。