快速開始
教學
工具和語言
範例
參考
書籍評論
正規表示式參考
簡介
目錄
快速參考
字元
基本功能
字元類別
簡寫
定位點
字詞邊界
量詞
Unicode
擷取群組和反向參照
命名群組和反向參照
特殊群組
模式修改器
遞迴和平衡群組
替換參考
字元
配對文字和反向參照
內容和大小寫轉換
條件式
本網站的其他資訊
簡介
正規表示式快速開始
正規表示式教學
替換字串教學
應用程式和語言
正規表示式範例
正規表示式參考
替換字串參考
書籍評論
可列印 PDF
關於本網站
RSS Feed 和部落格
RegexBuddy—Better than a regular expression reference!

正規表示式參考:命名群組和反向參照

功能語法說明範例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
命名擷取群組 (?<name>regex) 擷取與「regex」配對的文字到「name」群組中。名稱可以包含字母和數字,但必須以字母開頭。 (?<x>abc){3} 配對 abcabcabc。群組 x 配對 abc 75.107.05.2.21.9ECMA
1.42–1.83
命名擷取群組 (?'name'regex) 擷取與「regex」配對的文字到「name」群組中。名稱可以包含字母和數字,但必須以字母開頭。 (?'x'abc){3} 配對 abcabcabc。群組 x 配對 abc 5.107.05.2.21.9ECMA
1.42–1.83
命名擷取群組 (?P<name>regex) 擷取與「regex」配對的文字到「name」群組中。名稱可以包含字母和數字,但必須以字母開頭。 (?P<x>abc){3} 配對 abcabcabc。群組 x 配對 abc 5.10
重複命名的群組 任意命名的群組 兩個命名群組可以共用同一個名稱。 (?<x>a)|(?<x>b) 符合 ab 7 錯誤5.106.7 選項選項5.2.0 選項選項選項錯誤不適用錯誤錯誤1.9不適用ECMA
1.42–1.83
不適用不適用不適用不適用不適用不適用不適用不適用
重複命名的群組 任意命名的群組 共用同一個名稱的命名群組被視為同一個群組,因此使用反向參照時不會有陷阱。 不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用
重複命名的群組 任意命名的群組 如果正規表示式有多個群組共用同一個名稱,使用該名稱的反向參照會指向正規表示式中最左邊的同名群組。 不適用6.7–8.335.2.0–5.5.9XE–XE62.14.0–3.0.2不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用
重複命名的群組 任意命名的群組 如果正規表示式有多個群組共用同一個名稱,使用該名稱的反向參照會指向最左邊的同名群組,該群組在評估反向參照時實際參與了比對嘗試。 不適用5.108.365.6.910.23.1.3不適用不適用不適用不適用不適用ECMA
1.47–1.83
不適用不適用不適用不適用不適用不適用不適用不適用
重複命名的群組 任意命名的群組 如果正規表示式有多個群組共用同一個名稱,使用該名稱的反向參照會指向正規表示式中出現在反向參照左邊的最右邊的同名群組。 不適用不適用不適用不適用不適用不適用ECMA
1.42–1.46
不適用不適用不適用不適用不適用不適用不適用不適用
重複命名的群組 任意命名的群組 如果正規表示式有多個群組共用同一個名稱,使用該名稱的反向參照可以符合出現在正規表示式中反向參照左邊的任何同名群組所擷取的文字。 不適用不適用不適用不適用不適用1.9不適用不適用不適用不適用不適用不適用不適用不適用不適用
命名的反向參照 \k<name> 以命名群組「名稱」所符合的文字替換。 (?<x>abc|def)=\k<x> 符合 abc=abcdef=def,但不符合 abc=defdef=abc 75.107.05.2.21.9ECMA
1.47–1.83
命名的反向參照 \k'name' 以命名群組「名稱」所符合的文字替換。 (?'x'abc|def)=\k'x' 符合 abc=abcdef=def,但不符合 abc=defdef=abc 5.107.05.2.21.9ECMA
1.47–1.83
命名的反向參照 \k{name} 以命名群組「名稱」所符合的文字替換。 (?'x'abc|def)=\k{x} 符合 abc=abcdef=def,但不符合 abc=defdef=abc 5.107.25.2.4ECMA
1.47–1.83
命名的反向參照 \g{name} 以命名群組「名稱」所符合的文字替換。 (?'x'abc|def)=\g{x} 符合 abc=abcdef=def,但不符合 abc=defdef=abc 5.107.25.2.4ECMA
1.42–1.83
命名的反向參照 (?P=name) 以命名群組「名稱」所符合的文字替換。 (?P<x>abc|def)=(?P=x) 符合 abc=abcdef=def,但不符合 abc=defdef=abc 5.10
失敗的反向參照 任意命名的反向參照 未參與比對嘗試的群組反向參照無法比對。 (?<x>a)?\k<x> 比對 aa,但無法比對 b 非 ECMA75.10已略過不適用已略過1.9不適用ECMA
1.47–1.83
不適用不適用不適用不適用不適用不適用不適用不適用
巢狀反向參照 任意命名的反向參照 反向參照可以在它們所參照的群組內使用。 (?<x>a\k<x>?){3} 比對 aaaaaa 75.106.55.1.3已略過不適用已略過2.4–3.4 失敗1.9 失敗不適用ECMA
1.78–1.83 失敗
不適用不適用不適用不適用不適用不適用不適用不適用
前向參照 任意命名的反向參照 反向參照可以在它們所參照的群組之前使用。 (\k<x>?(?<x>a)){3} 比對 aaaaaa 7 錯誤5.106.75.2.0已略過不適用錯誤錯誤1.9 錯誤不適用ECMA
1.42–1.83 錯誤
不適用不適用不適用不適用不適用不適用不適用不適用
命名擷取群組 任何命名擷取群組 數字是擷取群組的有效名稱。 (?<17>abc){3} 比對 abcabcabc。名為「17」的群組比對 abc 7 錯誤5.10 錯誤4.0–8.33錯誤5.0.0–5.1.2XE–XE62.14.0–3.0.2錯誤不適用錯誤錯誤1.9 錯誤不適用ECMA
1.42–1.83
不適用不適用不適用不適用不適用不適用不適用不適用
命名擷取群組 任何名稱為數字的擷取群組 如果群組的名稱是數字,則該數字會成為群組的名稱和群組的數字。 (?<17>abc|def)=\17 比對 abc=abcdef=def,但不比對 abc=defdef=abc 不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用
命名的反向參照 任意命名的反向參照 數字是反向參照的有效名稱,然後指向名稱為該數字的群組。 (?<17>abc|def)=\k<17> 比對 abc=abcdef=def,但不比對 abc=defdef=abc 不適用不適用4.0–8.33不適用5.0.0–5.1.2XE–XE62.14.0–3.0.2不適用不適用不適用不適用不適用不適用ECMA
1.42–1.83 錯誤
不適用不適用不適用不適用不適用不適用不適用不適用
命名擷取群組 任何命名擷取群組 負數字是擷取群組的有效名稱。 (?<-17>abc){3} 比對 abcabcabc。名為「-17」的群組比對 abc 錯誤錯誤7 錯誤5.10 錯誤錯誤錯誤錯誤錯誤錯誤錯誤不適用錯誤錯誤1.9 錯誤不適用ECMA
1.42–1.83
不適用不適用不適用不適用不適用不適用不適用不適用
命名的反向參照 任意命名的反向參照 負數字是反向參照的有效名稱,然後指向名稱為該負數字的群組。 不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用不適用ECMA
1.42–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