原代码如下,请教下各位大神,数据文本name=account 
 
程序代码 
<% 
    ' Copyright (c) 2008, reusablecode.blogspot.com; some rights reserved. 
    ' 
    ' This work is licensed under the Creative Commons Attribution License. To view 
    ' a copy of this license, visit http://creativecommons.org/licenses/by/3.0/ or 
    ' send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 
    ' 94305, USA. 
 
    ' Luhn (mod 10) algorithm 
    function luhn(byVal input) 
        dim sum 
        dim odd 
        dim currentDigit 
        dim regEx 
 
        input = CStr(input) 
        sum = 0 
        odd = CBool(len(input) mod 2) 
 
        ' Remove any non-numeric characters. 
        if not isNumeric(input) then 
            set regEx = new RegExp 
            regEx.Global = true 
            regEx.Pattern = "\D" 
            input = regEx.Replace(input, "") 
            set regEx = nothing 
        end if 
 
        ' Calculate sum of digits. 
        for i = 1 to len(input) 
            currentDigit = cint(mid(input, i, 1)) 
 
            if odd then 
                sum = sum + currentDigit 
            else 
                if currentDigit * 2 > 9 then 
                    sum = sum + (currentDigit * 2 - 9) 
                else 
                    sum = sum + (currentDigit * 2) 
                end if 
            end if 
 
            odd = not odd 
        next 
 
        ' Check validity. 
        if sum mod 10 = 0 then 
            luhn = true 
        else 
            luhn = false 
        end if 
    end function 
 
    ' Unit test - expected result is true 
    if luhn("9558821402001225732") then 
        response.write "true" 
    else 
        response.write "false" 
    end if 
%> 
 
 |