$_ = '1()()()2923()())))(('; s/[()]+//g; print; #### $string='111(22(33))44554'; $re = qr/\((?:(?>[^()+])|(??{$re}))*\)/; $string =~ s/$re//; print $string