$_ = '111(22(33)44)55'; my $re = qr/ (.*?) # minimal grab up to the first... \( # literal left paren .* # greedy skip everything up through... \) # the last literal right paren (.*)$ # then grab everything remaining /x; s/$re/$1$2/; print;