開發者工具 / 14
正規表示式測試工具
在有時間限制的 worker 中執行 JavaScript 正規表示式,檢視每個比對結果。
正規表示式測試工具: TOEA 會在一次性瀏覽器 worker 中評估正規表示式,限制輸入和結果數量,並終止執行時間過長的模式。 全程在瀏覽器中於本機執行,檔案不會上傳至伺服器。
- 分類
- 開發者工具
- 使用次數
- 在瀏覽器中
- 費用
- 免費・免註冊
- 可用狀態
- 可立即使用
全程在瀏覽器中執行
會改變結果的旗標
g會找出所有符合項目,而不是只有第一個;i會忽略大小寫。最常混淆的是以下兩個:m讓^和$在每個換行處比對,而不只是在文字開頭和結尾比對;s則讓.也能比對換行。u會啟用完整Unicode處理,表情符號和\p{L}形式的字母類別都需要它。
會讓程式卡住的模式
像(a+)+$或(\w+\s?)*$這類巢狀量詞,在失敗前可能會嘗試指數級數量的比對方式,因此單行輸入就能讓伺服器或瀏覽器分頁卡住。本測試工具會在750毫秒後停止模式。如果模式被停止,請移除巢狀結構,或讓內部部分無法以多種方式比對相同文字。
JavaScript與其他正規表示式語法
正規表示式在不同語言之間移植時,大多能保留不變,差異主要在細節。JavaScript使用(?<name>…)命名群組,Python使用(?P<name>…);JavaScript沒有PCRE、Java和.NET支援的擁有量詞或原子群組。在這裡有效的模式,移到其他地方執行前可能需要小幅修改。
使用方式
- 輸入模式、旗標和測試文字。
- 執行正規表示式。
- 查看比對位置和擷取群組。
隱私與限制
測試文字不會離開您的瀏覽器。JavaScript 正規表示式語法和 Unicode 行為可能與其他語言不同。
相關工具
常見問題
為什麼有時間限制?
某些模式會造成災難性回溯;worker 會在750毫秒後停止。
會顯示多少個比對結果?
最多會收集1,000個比對結果,讓頁面維持順暢。
免費工具・使用在瀏覽器中次・免註冊