LuhnModN
这是 Swift 中的 Luhn mod N 算法的实现。
功能:
- 将校验位添加到一个字符串中
- 检查字符串的有效性
- 在模 2 到 36 上工作
安装
Cocoapods
CocoaPods 是 Cocoa 项目的依赖管理器。您可以使用以下命令安装它:
$ gem install cocoapods
要将 LuhnModN 集成到您的 Xcode 项目中使用 CocoaPods,请在您的 Podfile 中添加以下行:
pod 'LuhnModN'
用法
添加校验位
默认情况下,模数为10,因为它是使用最广泛的。
let visa = try? LuhnModN.addCheckCharacter(to: "401288888888188")
要使用另一个模数,只需将其作为参数添加。
let hexaString = try? LuhnModN.addCheckCharacter(to: "1450c2697d3a4925a1ec59f5dd3a9956", withModulo: 16)
错误
有两种可能的错误。
enum LuhnError: Error {
case invalidCharacters
case moduloOutOfRange
}
验证有效性
默认情况下,模数为10,因为它是使用最广泛的。
LuhnModN.isValid("4012888888881881")
要使用另一个模数,只需将其作为参数添加。
LuhnModN.isValid("1450c2697d3a4925a1ec59f5dd3a9956b", withModulo : 16)
许可协议
MIT许可协议 (MIT)
版权所有 © 2015 Arnaud Bultot
在此特此授予任何人,免费未经限制地获得此软件和相关文档(“软件”)副本的权利,用于使用软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本,并允许向软件提供的人如此行事,前提是
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
软件按“原样”提供,不受任何保证,无论是明示的、暗示的还是隐含的,包括但不限于适销性、特定用途的适用性和非侵权性保证。在任何情况下,无论由于违约、侵权或其他责任,作者或版权所有者不得对任何索赔、损害或其他责任承担责任,无论该责任是否源于、与软件或其使用或其他处置有关。