ActionScript 3 使用RegExp验证卡号
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ActionScript 3 使用RegExp验证卡号相关的知识,希望对你有一定的参考价值。
public function validateCardNumber(ccNumber:String):Boolean
{
var americanExpress:RegExp = /^(34|37) ([0-9]{13})$/x;
var dinnersClub:RegExp = /^(30[0-5]) ([0-9]{13})$/x;
var masterCard:RegExp = /^(5[1-5]) ([0-9]{14})$/x;
var visa:RegExp = /^4 ([0-9]{12} | [0-9]{15})$/x;
var valid:Boolean;
ccNumber = ccNumber.match(/\d/g).join('');
if (americanExpress.test(ccNumber) || dinnersClub.test(ccNumber) ||
masterCard.test(ccNumber) || visa.test(ccNumber))
valid = true;
return valid && luhnChecksum(ccNumber);
}
public function luhnChecksum(number:String):Boolean
{
var digits:Array = number.split('');
var start:uint = (number.length % 2 == 0) ? 0:1;
var sum:int;
while (start < digits.length)
{
digits[start] = uint(digits[start]) * 2;
start += 2;
}
digits = digits.join('').split('');
for (var i:uint = 0; i < digits.length; i++)
{
sum += uint(digits[i]);
}
return (sum % 10 == 0);
}
以上是关于ActionScript 3 使用RegExp验证卡号的主要内容,如果未能解决你的问题,请参考以下文章
ActionScript 3 使用RegExp验证卡号
ActionScript 3 使用RegExp验证日历日期
ActionScript 3 使用RegExp验证Web地址
ActionScript 3 使用RegExp验证电话号码
ActionScript 3 使用RegExp验证电子邮件地址
ActionScript 3 通过RegExp进行URL验证