Swift 3: Как я могу получить массив из строки
На самом деле я получил строку поля адреса из API, например "District-1 1656-Union-Street Eureka 707-445-6600", поэтому мне нужно преобразовать в массив.
Ожидаемый результат:
["Район-1", "Улица Юнион-1656", "Эврика", "707-445-6600"]
Как я могу получить массив из components
метод с использованием пробела в качестве разделителя.
//Code
var getAddress = addInfo.components(separatedBy: " ")
//Result
["District-1", "", "", "1656-Union-Street", "", "", "Eureka", "", "707-445-6600"]
Но проблема в том, что он также вернет пустой объект.
1 ответ
Вы можете применить split
Метод выполнения поставленной задачи.
Для т.е.
var addInfo = "District-1 1656-Union-Street Eureka 707-445-6600"
var getAddress = addInfo.characters.split(separator: " ", omittingEmptySubsequences: true).map(String.init)
//Result
["District-1", "1656-Union-Street", "Eureka", "707-445-6600"]
omittingEmptySubsequence: если false, пустая подпоследовательность возвращается в результате для каждой последовательной пары элементов-разделителей в коллекции и для каждого экземпляра разделителя в начале или конце коллекции. Если true, возвращаются только непустые подпоследовательности. Значение по умолчанию верно.
Для получения дополнительной информации, пожалуйста, просмотрите ссылку