正規表示式參考 |
簡介 |
目錄 |
快速參考 |
字元 |
基本功能 |
字元類別 |
簡寫 |
錨點 |
字詞邊界 |
量詞 |
Unicode |
擷取群組和反向參照 |
命名群組和反向參照 |
特殊群組 |
模式修飾詞 |
遞迴和平衡群組 |
替換參考 |
字元 |
符合文字和反向參照 |
內容和大小寫轉換 |
條件式 |
此網站的更多資訊 |
簡介 |
正規表示式快速入門 |
正規表示式教學 |
替換字串教學 |
應用程式和語言 |
正規表示式範例 |
正規表示式參考 |
替換字串參考 |
書籍評論 |
可列印 PDF |
關於此網站 |
RSS 摘要和部落格 |
功能 | 語法 | 說明 | 範例 | JGsoft | .NET | Java | Perl | PCRE | PCRE2 | PHP | Delphi | R | JavaScript | VBScript | XRegExp | Python | Ruby | std::regex | Boost | Tcl ARE | POSIX BRE | POSIX ERE | GNU BRE | GNU ERE | Oracle | XML | XPath |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
擷取群組 | (regex) | 括弧將括弧之間的正規表示式分組。它們會擷取括弧內正規表示式所配對到的文字,並將其儲存到編號群組中,可以使用編號反向參照重複使用。它們允許您將正規表示式運算子套用至整個分組正規表示式。 | (abc){3} 會配對 abcabcabc。第一個群組會配對 abc。 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA extended egrep awk | ECMA extended egrep awk | 是 | 否 | 是 | 否 | 是 | 是 | 是 | 是 |
擷取群組 | \(regex\) | 跳脫的括弧將括弧之間的正規表示式分組。它們會擷取括弧內正規表示式所配對到的文字,並將其儲存到編號群組中,可以使用編號反向參照重複使用。它們允許您將正規表示式運算子套用至整個分組正規表示式。 | \(abc\){3} 會配對 abcabcabc。第一個群組會配對 abc。 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | basic grep | basic grep | 否 | 是 | 否 | 是 | 否 | 否 | 否 | 否 |
非擷取群組 | (?:regex) | 非擷取括號將 regex 分組,以便您可以套用 regex 算子,但不會擷取任何內容。 | (?:abc){3} 會配對 abcabcabc。沒有群組。 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA | ECMA | 是 | 否 | 否 | 否 | 否 | 否 | 否 | 是 |
反向參照 | \1 到 \9 | 以第 1 到第 9 個編號擷取群組之間配對的文字取代。 | (abc|def)=\1 會配對 abc=abc 或 def=def,但不會配對 abc=def 或 def=abc。 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA basic grep | ECMA basic grep | 是 | 是 | 否 | 是 | 是 | 是 | 否 | 是 |
反向參照 | \10 到 \99 | 以第 10 到第 99 個編號擷取群組之間配對的文字取代。 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | ECMA | 否 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | 是 | |
反向參照 | \k<1> 到 \k<99> | 以第 1 到第 99 個編號擷取群組之間配對的文字取代。 | (abc|def)=\k<1> 會配對 abc=abc 或 def=def,但不會配對 abc=def 或 def=abc。 | 是 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 是 | 否 | 1.9 | 否 | ECMA 1.47–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
反向參照 | \k'1' 到 \k'99' | 以第 1 到第 99 個編號擷取群組之間配對的文字取代。 | (abc|def)=\k'1' 會配對 abc=abc 或 def=def,但不會配對 abc=def 或 def=abc。 | 是 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 1.9 | 否 | ECMA 1.47–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
反向參照 | \g1 到 \g99 | 以第 1 到第 99 個編號擷取群組之間配對的文字取代。 | (abc|def)=\g1 會配對 abc=abc 或 def=def,但不會配對 abc=def 或 def=abc。 | 否 | 否 | 否 | 5.10 | 7.0 | 是 | 5.2.2 | 是 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | ECMA 1.42–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
反向參照 | \g{1} 到 \g{99} | 以第 1 到第 99 個編號擷取群組之間配對的文字取代。 | (abc|def)=\g{1} 會配對 abc=abc 或 def=def,但不會配對 abc=def 或 def=abc。 | 否 | 否 | 否 | 5.10 | 7.0 | 是 | 5.2.2 | 是 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | ECMA 1.42–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
反向參照 | \g<1> 到 \g<99> | 以第 1 到第 99 個編號擷取群組之間配對的文字取代。 | (abc|def)=\g<1> 會配對 abc=abc 或 def=def,但不會配對 abc=def 或 def=abc。 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | ECMA 1.47–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
反向參照 | \g'1' 到 \g'99' | 以第 1 到第 99 個編號擷取群組之間配對的文字取代。 | (abc|def)=\g'1' 會配對 abc=abc 或 def=def,但不會配對 abc=def 或 def=abc。 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | ECMA 1.47–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
反向參照 | (?P=1) 到 (?P=99) | 以第 1 到第 99 個編號擷取群組之間配對的文字取代。 | (abc|def)=(?P=1) 會配對 abc=abc 或 def=def,但不會配對 abc=def 或 def=abc。 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
相對後向參照 | \k<-1>、\k<-2> 等 | 以從右至左從後向參照開始,由指定數字計算命名或編號擷取群組的開啟括號數目,所匹配的文字取代。 | (a)(b)(c)(d)\k<-3> 匹配 abcdb。 | V2 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 1.9 | 否 | ECMA 1.47–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
相對後向參照 | \k'-1'、\k'-2' 等 | 以從右至左從後向參照開始,由指定數字計算命名或編號擷取群組的開啟括號數目,所匹配的文字取代。 | (a)(b)(c)(d)\k'-3' 匹配 abcdb。 | V2 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 1.9 | 否 | ECMA 1.47–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
相對後向參照 | \g-1、\g-2 等 | 以從右至左從後向參照開始,由指定數字計算命名或編號擷取群組的開啟括號數目,所匹配的文字取代。 | (a)(b)(c)(d)\g-3 匹配 abcdb。 | 否 | 否 | 否 | 5.10 | 7.0 | 是 | 5.2.2 | 是 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | ECMA 1.42–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
相對後向參照 | \g{-1}、\g{-2} 等 | 以從右至左從後向參照開始,由指定數字計算命名或編號擷取群組的開啟括號數目,所匹配的文字取代。 | (a)(b)(c)(d)\g{-3} 匹配 abcdb。 | 否 | 否 | 否 | 5.10 | 7.0 | 是 | 5.2.2 | 是 | 是 | 否 | 否 | 否 | 否 | 否 | 否 | ECMA 1.42–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
相對後向參照 | \g<-1>、\g<-2> 等 | 以從右至左從後向參照開始,由指定數字計算命名或編號擷取群組的開啟括號數目,所匹配的文字取代。 | (a)(b)(c)(d)\g<-3> 匹配 abcdb。 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | ECMA 1.47–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
相對後向參照 | \g'-1'、\g'-2' 等 | 以從右至左從後向參照開始,由指定數字計算命名或編號擷取群組的開啟括號數目,所匹配的文字取代。 | (a)(b)(c)(d)\g'-3' 匹配 abcdb。 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | ECMA 1.47–1.83 | 否 | 否 | 否 | 否 | 否 | 否 | 否 | 否 |
後向參照失敗 | 任何編號後向參照 | 對未參與匹配嘗試的群組的後向參照無法匹配。 | (a)?\1 匹配 aa,但無法匹配 b。 | 是 | 非 ECMA | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 忽略 | 忽略 | 忽略 | 是 | 是 | ECMA basic grep 忽略 | ECMA 1.47–1.83 | 是 | 是 | 不適用 | 是 | 是 | 是 | 不適用 | 忽略 |
無效的反向參照 | 任何編號後向參照 | 對根本不存在的群組的反向參照是有效的,但無法比對任何內容。 | (a)?\2|b 在 aab 中比對 b。 | 錯誤 | 錯誤 | 是 | 錯誤 | 錯誤 | 錯誤 | 錯誤 | 錯誤 | 錯誤 | 錯誤 | 錯誤 | 錯誤 | 錯誤 | 僅限 1.8 | ECMA basic grep 錯誤 | ECMA basic grep 錯誤 | 錯誤 | 錯誤 | 不適用 | 錯誤 | 錯誤 | 錯誤 | 不適用 | 錯誤 |
巢狀反向參照 | 任何編號後向參照 | 反向參照可以在它們引用的群組內部使用。 | (a\1?){3} 比對 aaaaaa。 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 忽略 | 是 | 忽略 | 錯誤 | 失敗 | ECMA basic grep 錯誤 | ECMA 1.78–1.83 失敗 | 錯誤 | 錯誤 | 不適用 | 錯誤 | 錯誤 | 錯誤 | 不適用 | 錯誤 |
前向參照 | 任何編號後向參照 | 反向參照可以在它們引用的群組之前使用。 | (\2?(a)){3} 比對 aaaaaa。 | 是 | 非 ECMA | 是 | 是 | 是 | 是 | 是 | 是 | 是 | 忽略 | 錯誤 | 錯誤 | 錯誤 | 是 | ECMA basic grep 錯誤 | ECMA 1.78–1.83 | 錯誤 | 錯誤 | 不適用 | 錯誤 | 錯誤 | 錯誤 | 不適用 | 錯誤 |
功能 | 語法 | 說明 | 範例 | JGsoft | .NET | Java | Perl | PCRE | PCRE2 | PHP | Delphi | R | JavaScript | VBScript | XRegExp | Python | Ruby | std::regex | Boost | Tcl ARE | POSIX BRE | POSIX ERE | GNU BRE | GNU ERE | Oracle | XML | XPath |
| 快速入門 | 教學 | 工具和語言 | 範例 | 參考 | 書籍評論 |
| 簡介 | 目錄 | 快速參考 | 字元 | 基本功能 | 字元類別 | 簡寫 | 錨定 | 字詞邊界 | 量詞 | Unicode | 擷取群組和反向參照 | 命名群組和反向參照 | 特殊群組 | 模式修改器 | 遞迴和平衡群組 |
頁面網址:https://regular-expressions.dev.org.tw/refcapture.html
頁面上次更新:2023 年 10 月 16 日
網站上次更新:2024 年 3 月 15 日
版權所有 © 2003-2024 Jan Goyvaerts。保留所有權利。