【发布时间】:2017-05-03 12:01:57
【问题描述】:
我正在尝试在How do I validate an Australian Medicare number? 线程中使用验证医疗保险代码,
我替换以下行
let expression =try!NSRegularExpression(pattern:pattern, options: NSRegularExpressionOptions.CaseInsensitive)
下面的代码,
var expression :NSRegularExpression
do {
expression = NSRegularExpression(pattern: pattern, options: NSRegularExpressionOptions.CaseInsensitive)
} catch {
// Handling error
println("error medicare val")
}
但我遇到了错误
在 do-while 块中预期
和
大括号语句是一个未使用的分句
我不确定如何解决此错误。我正在使用 Xcode 6.2。
更新
我尝试了 Parth 的答案,但出现以下错误,
一行中的连续语句必须用';'分隔 对于这一行
expression = try NSRegularExpression(pattern: pattern, options: NSRegularExpressionOptions.CaseInsensitive)
还有
} catch let error as NSError {
// Handling error
print("error medicare val\(error)")
}
代码得到
在 do-while 块中预期
大括号语句是一个未使用的分句
预期的表达方式
一行中的连续语句必须用';'分隔
【问题讨论】:
-
Xcode 6.2 附带 Swift 1.1,您在链接文章中找到的答案是用 Swift 2.1(或 2.0,我不确定)编写的。即使你已经修复了 do-try-catch 部分,可能还有许多其他部分需要修复,而且最近很难找到为 Swift 1 编写的文章。你不能升级你的 mac 并将你的 Xcode 更新到最新发布的版本?
-
@OOPer 感谢您的帮助。你是对的。我修复了该代码中的几行更改,但仍然有错误。是的,这个版本的文章很难找到,可惜这次我无法升级。
标签: swift