開發者工具 / 20
正規表示式 Token 解說與模式分析工具
將JavaScript正規表示式拆解為易懂的Token說明,解析捕獲群組、字元類別與量詞。
正規表示式 Token 解說與模式分析工具: TOEA會將正規表示式模式解析為個別的AST Token,並為每個元件產生易懂的說明。 全程在瀏覽器中於本機執行,檔案不會上傳至伺服器。
- 分類
- 開發者工具
- 使用次數
- 在瀏覽器中
- 費用
- 免費・免註冊
- 可用狀態
- 可立即使用
全程在瀏覽器中執行
模式 Token 說明
| Token | 類別 | 說明 |
|---|---|---|
/i | 正規表示式旗標 | 已啟用的旗標:不區分大小寫的比對。 |
^ | 錨點 | 比對字串或行的開頭。 |
( | 群組 | 開始擷取群組#1。 |
[a-z0-9_\.-] | 字元類別 | 比對字元集合[a-z0-9_\.-]中的任一字元。 |
+ | 量詞 | 貪婪地比對前一個權杖1次以上。 |
) | 群組 | 結束擷取或非擷取群組。 |
@ | 字面值 | 比對字面字元'@'。 |
( | 群組 | 開始擷取群組#2。 |
[\da-z\.-] | 字元類別 | 比對字元集合[\da-z\.-]中的任一字元。 |
+ | 量詞 | 貪婪地比對前一個權杖1次以上。 |
) | 群組 | 結束擷取或非擷取群組。 |
\. | 字元類別/逸出 | 逸出字元'.' |
( | 群組 | 開始擷取群組#3。 |
[a-z\.] | 字元類別 | 比對字元集合[a-z\.]中的任一字元。 |
{2,6} | 量詞範圍 | 比對明確指定的範圍次數{2,6}。 |
) | 群組 | 結束擷取或非擷取群組。 |
$ | 錨點 | 比對字串或行的結尾。 |
問號的多種用途
?的位置不同,意義也不同。放在字元或群組後面會使其變成選用項目:colou?r。放在另一個量詞後面,會使該量詞變成惰性比對,盡可能比對最少內容:<.+?>會在第一個>處停止,而<.+>會一直比對到該行最後一個>。放在群組開頭則會引入特殊語法:(?:…)會建立不擷取的群組,(?=…)和(?!…)會向前查看,而(?<name>…)會為群組命名。請將?與它前面的內容一起解讀。
簡寫字元類別只支援 ASCII
在 JavaScript 中,\d只會比對0–9,而\w只會比對未帶重音符號的拉丁字母、數字和底線。因此\w+會在café中找到caf,而\b會將帶重音符號的字母視為字詞邊界。對其他語言的文字,請搭配u旗標使用 Unicode 屬性類別,例如[\p{L}\p{N}_]+。請在正規表示式測試器中使用實際範例文字測試修正後的模式。
模式和字串中的跳脫
有十四個字元具有特殊意義,需要使用反斜線才能進行字面比對:. * + ? ^ $ { } ( ) | [ ] \,以及/…/字面值中的/。使用new RegExp從字串建立模式時,每個反斜線都要加倍,因此\d+會變成"\\d+"。能以字面值運作、但從字串建立時無法運作的模式,通常是在過程中遺失了反斜線。
使用方式
- 輸入或貼上JavaScript正規表示式(例如 /^[a-z0-9]+$/i)。
- 點選「解說 Regex」。
- 查看拆解表格,了解錨點、字元類別、群組和旗標。
隱私與限制
正規表示式的解析與解說完全在您的瀏覽器中進行。
相關工具
常見問題
哪些正規表示式功能會被解說?
會解說錨點(^、$)、字元類別(d、w、s、[a-z])、量詞(*、+、?、{m,n})、捕獲群組和旗標。
這個工具會驗證正規表示式語法嗎?
會,語法錯誤會立即被偵測並回報。
免費工具・使用在瀏覽器中次・免註冊