判断银行卡号是否正确
2016-11-23 14:10
411 查看
public class func checkCard(number: String) -> Bool { var oddSum = 0 var evenSum = 0 var allSum = 0 let cardNumberLength = number.lengthOfBytes(using: String.Encoding.utf8) let lastIndex = number.index(number.endIndex, offsetBy: -1) let lastNum = Int(number.substring(from: lastIndex))! let num = number.substring(to: lastIndex) for i in (1...cardNumberLength-1).reversed() { let start = num.index(num.startIndex, offsetBy: i-1) let end = num.index(num.startIndex, offsetBy: i) var tempNumber = Int(num.substring(with: start..<end))! if cardNumberLength % 2 == 1 { if (i % 2 == 0) { tempNumber *= 2 if tempNumber >= 10 { tempNumber -= 9 } evenSum += tempNumber }else { oddSum += tempNumber } }else { if (i % 2 == 1) { tempNumber *= 2 if tempNumber >= 10 { tempNumber -= 9 } evenSum += tempNumber }else { oddSum += tempNumber } } } allSum = oddSum + evenSum allSum += lastNum if allSum % 10 == 0 { return true } return false }测试了农行和招商银行的银行卡,是可以通过的。
相关文章推荐
- iOS 中使用正则表达式判断身份证格式及银行卡号格式是否正确(推荐)
- 判断用户输入的银行卡号是否正确的方法(基于Luhn算法的格式校验)
- iOS 正则表达式判断身份证格式以及银行卡号格式是否正确
- iOS 中使用正则表达式判断身份证格式及银行卡号格式是否正确(推荐)
- 判断用户输入的银行卡号是否正确--基于Luhn算法的格式校验
- 判断银行卡号是否有效
- IOS判断是否有效银行卡号
- 字符串工具类(例如对字符串的判断长度大小,是否为验证码,手机号,银行卡号之类的)
- 判断银行账号是否输入正确
- 判断银行账号是否输入正确
- 银行卡卡号是否正确判断(实战)
- JS判断是否为银行卡号
- 获取银行卡所属银行,验证银行卡号是否正确
- 判断银行账号是否输入正确
- 判断银行账号是否输入正确
- 获取银行卡所属银行,验证银行卡号是否正确
- 判断信用卡卡号是否正确
- 银行卡号验证是否正确 PHP
- 正则表达式判断手机号和邮箱格式是否正确
- 正则判断 输入数据是否正确