my %values= ( '^' => '^', ); ... s!\^\(([^)]+)\)!$values{ $1 }!g;