#pragma mark 判断银行卡号是否合法
-(BOOL)isBankCard:(NSString *)cardNumber{
if(cardNumber.length==0){
return NO;
}
NSString *digitsOnly = @"";
char c;
for (int i = 0; i < cardNumber.length; i++){
c = [cardNumber characterAtIndex:i];
if (isdigit(c)){
digitsOnly =[digitsOnly stringByAppendingFormat:@"%c",c];
}
}
int sum = 0;
int digit = 0;
int addend = 0;
BOOL timesTwo = false;
for (NSInteger i = digitsOnly.length - 1; i >= 0; i--){
digit = [digitsOnly characterAtIndex:i] - '0';
if (timesTwo){
addend = digit * 2;
if (addend > 9) {
addend -= 9;
}
}
else {
addend = digit;
}
sum += addend;
timesTwo = !timesTwo;
}
int modulus = sum % 10;
return modulus == 0;
}
验证银行卡是否合法
猜你喜欢
转载自blog.csdn.net/guosiyuan1993/article/details/81101675
今日推荐
周排行