for ("@charges") { s/ch3 ((?:ch[^346] )*)ch4 ((?:ch[^346] )*)ch6/${1}${2}chx/g; say; }