Хотя это и не настройка AV, разбор фразы для динамика даст желаемые результаты.
Например, используя расширение ниже:
let number = "1492"
let phrase = number.separate(every: 2, with: " ")
print(phrase) // 14 92
А для телефона:
let phone = "650-412-3456"
let parts = phone.components(separatedBy: CharacterSet.decimalDigits.inverted)
var phrase2 = String()
for part in parts {
if Int(part) != nil {
phrase2.append(String(describing: part).separate(every: 1, with: " ") + ",")
}
}
print(phrase2) // 6 5 0,4 1 2,3 4 5 6,
Синтезатор речи добавил запятые для более естественного чтения, но их можно было отключить.
Удлинение строки от Джо Махера:
extension String {
func separate(every: Int, with separator: String) -> String {
return String(stride(from: 0, to: Array(self).count, by: every).map {
Array(Array(self)[$0..<min($0 + every, Array(self).count)])
}.joined(separator: separator))
}
}