# Regular CGI my $quantity = $q->param('quantity'); # Tainted # "Fancy" CGI of your own construction my $quantity = $q->SafeNumberParam('quantity'); # De-tainted #### sub SafeNumberParam { my ($self) = shift; my ($param) = @_; my ($number) = $self->param($param) =~ /^(\d+)/; return $number; }