正則運算式測試器

測試 JavaScript 運算式、檢查群組並定位比對結果。

文字與正則
正在準備工作區…
輸入
輸出
結果將顯示在這裡。

使用方法

  1. 輸入不含 / 分隔符號的運算式,選擇旗標並加入測試文字。
  2. 手動執行,查看輸入標示和 JSON 報告。
  3. 選擇結果以定位或複製,也可下載完整報告。

測試 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 引擎為準。

尋找下一個實用工具

語言

要切換語言嗎?目前頁面的內容將被清空。請先複製或下載需要保留的資料。