in reply to regular expression paranthesis remover

Certainly... it goes like so:
$_ = '1()()()2923()())))(('; s/[()]+//g; print;

Update: Misread the question and you want to remove using balanced parens: use Regexp::Common::balanced

update2 And there is the solution based on the balanced parens re in perlre i.e.

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

-enlil