Algorithm::CheckDigits::MXX_001(3pm) | User Contributed Perl Documentation | Algorithm::CheckDigits::MXX_001(3pm) |
CheckDigits::MXX_001 - compute check digits for german Personalausweis (pa_de) or ABA routing numbers (aba_rn)
use Algorithm::CheckDigits; $pa = CheckDigits('pa_de'); if ($pa->is_valid('2406055684D<<6810203<0705109<6')) { # do something } if ($pa->is_valid('2406055684') { # do_something } $cn = $pa->complete('240605568_D<<681020_<070510_<_'); # $cn = '2406055684D<<6810203<0705109<6' $cd = $pa->checkdigit('2406055684D<<6810203<0705109<6'); # $cd = '6' $bn = $pa->basenumber('2406055684D<<6810203<0705109<6'); # $bn = '240605568_D<<681020_<070510_<_' $aba = CheckDigits('aba_rn'); if ($aba->is_valid('789456124')) { # do something }
For aba_rn the checksum is the difference of the sum from step 2 to the next multiple of 10.
If the number solely consists of digits, the checksum is just computed once according to algorithm given above.
Returns false otherwise,
Returns the complete number with check digit or '' if $number does not consist solely of digits and spaces.
Return '' otherwise.
Return '' otherwise.
None by default.
Mathias Weidner, "<mamawe@cpan.org>"
Aaron W. West pointed me to a fault in the computing of the check digit. Jim Hickstein made me aware of the ABA routing numbers.
perl, CheckDigits, www.pruefziffernberechnung.de, http://answers.google.com/answers/threadview/id/43619.html, http://www.brainjar.com/js/validation/
2022-10-13 | perl v5.34.0 |