Это должно сделать это:
^(?!.*details\.cfm).*selector=size.*$
^.*selector=size.*$
должно быть достаточно ясно. Первый бит, (?!.*details.cfm)
является негативным взглядом вперед: перед сопоставлением строки, которую он проверяет, строка не содержит «details.cfm» (с любым количеством символов перед ней).
В viewDidLoad
вашего контроллера вида установите для свойства viewControllers
вашего контроллера навигации значение, которое вы хотите, например:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController?.viewControllers = [self]
}
Вы также можете удалить его, получив количество контроллеров представления, которое у вас есть, и удалив их все, кроме последнего
if let viewControllerCount = self.navigationController?.viewControllers.count {
self.navigationController?.viewControllers.removeFirst(viewControllerCount - 1)
}
Если у вас есть 5 контроллеров представления, вы должны вызвать removeFirst (5-1) так он может удалить первые 4 контроллера вида.
Вместо того, чтобы бросать и все, что вы можете просто использовать:
self.navigationController?.viewControllers = [self]