Swift 实现
首先先校验两个字符串都是合法的数字字符串,不包含任何非数字字符,然后将两个输入的字符串转换为字符数组,并且反转数组,这样方便从低位到高位逐位相加。然后遍历两个字符数组,逐位相加,并且考虑到了进位的情况。最后再将结果反转回来,得到最终的加法结果。
// 正则校验数字字符串
func isValidNumber(_ string: String) throws -> NSTextCheckingResult? {
let regex = try NSRegularExpression(pattern: "^[0-9]+$")
let range = NSRange(location: 0, length: string.utf16.count)
return regex.firstMatch(in: string, options: [], range