Как использовать регулярные выражения в Swift 3?
Я хотел следовать в этом уроке, чтобы узнать о NSRegularExpression
на Swift
, но он не был обновлен до Swift 3
. Когда я открываю игровую площадку с примерами, которые они предоставляют, я получаю несколько ошибок, будучи одним из них вызов:
let regex = NSRegularExpression(pattern: pattern, options: .allZeros, error: nil)
Я видел, что теперь этот инициализатор выдает исключение, поэтому я изменил вызов, но это .allZeros
кажется, больше не существует. Я не нахожу никакого учебника или примера с эквивалентом этого в Swift 3
, может кто-нибудь скажите мне, какой вариант теперь должен заменить такой ?
2 ответов
Я считаю .allZeros
должен был использоваться, когда никакие другие параметры не применялись.
таким образом, с Swift 3 Вы можете передать пустой список опций или оставить options
параметр, так как по умолчанию нет параметров:
do {
let regex = try NSRegularExpression(pattern: pattern, options: [])
} catch {
}
или
do {
let regex = try NSRegularExpression(pattern: pattern)
} catch {
}
обратите внимание, что в Swift 3 вы не используете error
параметр больше. Теперь throws
.
можно использовать []
:
let regex = try! NSRegularExpression(pattern: pattern, options: [])
, который также является значением по умолчанию, так что вы можете опустить этот аргумент:
let regex = try! NSRegularExpression(pattern: pattern)
самый простой способ узнать это-команда + нажмите перейти к определению методов:
public init(pattern: String, options: NSRegularExpression.Options = []) throws