Когда я печатаю это:
print("dfi:.*\\{8766370\\}.*:6582.*")
результат в журнале выглядит как ожидалось:
>>>> dfi:.*\{8766370\}.*:6582.*
но когда я строю строку динамически, результат выглядит неправильно
let re = "dfi:.*" + "\\" + "{" + "\(section)" + "\\" + "}" + ".*:\(feed).*"
print(re)
>>>> dfi:.*\\{8766370\\}.*:6582.*"
Обратите внимание, что во втором случае "\" есть двойная косая черта, и я не уверен почему. Я попытался использовать одинарный или тройной слэш, но он все равно печатает неправильно.
РЕДАКТИРОВАТЬ - Добавление кода:
for (section,feeds) in toPurge {
var regex = [String]()
for feed in feeds {
// dfi:\{(8767514|8769411|8768176)\}.*
let re = "dfi:.*" + "\\" + "{" + "\(section)" + "\\" + "}" + ".*:\(feed).*"
regex.append(re)
}
print(regex) // looks wrong ! bug in xcode?
for r in regex {
print(r) // looks perfect
}
}