← 返回自然分析科技首頁

正則實驗室

實時高亮 · 分組詳情 · 替換預覽 · 語法速查

简体 繁體 English

正則運算式

/ /

測試字符串

文字取代

在取代內容裡可用 $1、$2 參照擷取分組,$& 參照整段比對,$<name> 參照具名分組。


  

比對詳情

懸停或點擊條目可在上方文字中定位該比對

運算式解說

依語法片段逐段解說目前運算式

正則語法速查

點擊條目插入到運算式游標處

常用正則示例

點一下即可載入表達式、標誌與配套測試文本。

功能特性

使用方法

常見問題

這裏的正則引擎和別的網站一樣嗎?
本頁直接用你當前瀏覽器內置的 JavaScript 正則引擎(ECMAScript 規範)執行匹配,沒有經過服務端。同一份表達式在 Chrome / Firefox / Safari 之間偶爾會有行為差異(尤其新語法支持進度不同),跨瀏覽器使用時以目標瀏覽器為準;伺服器端語言(Python / Java / PCRE)語法相近但不完全相同。
為什麼我的表達式一直「無匹配」?
常見原因:忘了開 g 標誌導致只匹配第一處(本頁高亮按標誌實時計算);^ 和 $ 在多行文本里需要開 m 標誌才按行生效;點號 . 默認不匹配換行,需要 s 標誌;還有反斜槓在部分輸入場景被吞掉,可對照「表達式解釋」檢查逐段拆解的結果。
取代裡的 $1、$<name> 是怎麼工作的?
取代字串遵循 JavaScript String.replace 的規則:$& 代表整段比對,$1、$2 代表第 1、2 個擷取分組,$<name> 代表名為 name 的擷取分組,$$ 代表字面 $。要插入字面的 $ 符號後面不接參照時,寫成 $$。
貪婪與非貪婪匹配有什麼區別?
默認量詞是貪婪的:.* 會儘可能多地吃掉字符再找後續內容;在量詞後加 ? 變成惰性(.*?),會儘可能少地匹配。例如從 "<a> <b>" 中取標籤內容,<.*> 匹配整串,<.*?> 只匹配 <a>。用本頁分別試一次,高亮範圍一目了然。
我粘貼的敏感文本會被上傳嗎?
不會。匹配、高亮、替換全部在你的瀏覽器內存里由本地 JavaScript 完成,本頁是純靜態頁面,沒有後端接口,文本與表達式只會保存在你自己設備的 localStorage 里以便下次打開恢復,除非你主動複製,本站伺服器上看不到任何內容。
為什麼我的運算式會讓頁面卡住?
這是「災難性回溯」:像 (a+)+ 或 ^(\w+\s?)*$ 這類「量詞套在本身含量詞的分組上」的寫法,一旦遇到不比對的字元,引擎要嘗試的分支數會指數級膨脹——55 個字元就可能算上一分半。本頁把比對放到獨立執行緒裏執行並設了 1 秒硬逾時,逾時會中止這次比對並給出提示,頁面不會再被凍死。等價但不含嵌套量詞的寫法通常存在,例如用 ^\w+(?:\s\w+)*$ 代替 ^(\w+\s?)*$。
怎麼比對換行?點號為什麼吃不到換行符?
點號 . 默認不比對換行,兩種做法:①在修飾符裏開 s(dotAll),讓 . 也比對換行;②不開 s 時寫 [\s\S](或等價的 [^]),它明確表示「任意字元、含換行」。反過來,如果只想讓 ^ 與 $ 按行生效,開 m 修飾符。
為什麼 \d 比對不到全形數字「123」?中文怎麼比對?
\d 等價於 [0-9],只認半角 ASCII 數字;全形數字屬於 Unicode 的 Nd 類。比對任意語言的數字可以開 u 修飾符後寫 \p{Nd};比對漢字用 [\u4e00-\u9fa5],或開 u 後寫 \p{Script=Han}。本頁「語法速查 → Unicode 與高級」裏有現成條目可點。
取代字串裏引用了不存在的分組會怎樣?
這裏有個容易誤判的地方:$<name> 在「運算式裏有具名分組、但沒有這個 name」時會取代成空字串,而在「運算式裏一個具名分組都沒有」時會原樣保留這幾個字元;$99 這類越界組號也原樣保留。同一串在兩種運算式下結果完全不同,所以本頁會在取代框下方直接給出內聯提示。
為什麼 (?i)、(?>a+) 這類寫法會報錯?
JavaScript 不支援內聯修飾符 (?i),也不支援原子分組 (?>…)、\A、\Z、[[:alpha:]]、\R 這些 Python / PCRE 口味的語法,遇到會直接報語法錯。本頁檢測到這類寫法時會額外提示「這是後端正則語法」,請把這類運算式放到目標語言的引擎裏測試——本頁只切換介面上那 6 個修飾符按鈕。

關於本工具

正則實驗室是一個線上正則運算式測試器:運算式 + 測試文字 + 即時突顯 + 分組詳情 + 取代預覽 + 語法速查放在同一頁,功能對標 RegExr / regex101 的核心用法。

匹配由瀏覽器原生 RegExp 引擎執行,解釋器與速查表是頁面內置的靜態數據;沒有任何後端或第三方 API,輸入內容不出瀏覽器,界面支持簡體 / 繁體 / English。

站內其他工具

純前端計算 · 瀏覽器原生 RegExp 引擎 · 免費 · 支持中/繁/英

使用範圍聲明:本網站銷售的所有產品或服務均不得用於人類或動物之臨床診斷或治療,僅可用於工業或科研等非醫療目的。

違法和不良資訊舉報:service@natanalysis.com

© 2026 深圳市自然分析科技有限公司 版權所有

粤ICP备2025458111号-1·粤公网安备44030002007958号