@{^CAPTURE}

一個陣列,如果上次模式比對成功,會顯示出擷取緩衝區的內容(如果有),不計算已經離開的巢狀區塊中比對的模式。

請注意,@{^CAPTURE} 的 0 索引等於 $1,1 索引等於 $2,以此類推。

if ("foal"=~/(.)(.)(.)(.)/) {
    print join "-", @{^CAPTURE};
}

應該會輸出「f-o-a-l」。

另請參閱 "$<digits> ($1, $2, ...)""%{^CAPTURE}""%{^CAPTURE_ALL}"

請注意,與大多數其他 regex 魔術變數不同,沒有單一字母等於 @{^CAPTURE}。另外請注意,在內插這個陣列的子字元時,必須使用分隔變數形式,例如

print "${^CAPTURE[0]}"

請參閱 "perldata 中使用大括號的分隔變數名稱" 以取得有關此形式及其用途的更多資訊。

這個變數新增於 5.25.7