Удалить элементы из массива, который содержит определенную строку в swift
У меня есть массив.
var array_var: [String] = [
"https://www.filepicker.io/api/file/XXXXXXXXXXXXX/convert?fit=crop&w=200&h=200&rotate=exif",
"https://www.filepicker.io/api/file/XXXXXXXXXXXXXX/convert?fit=crop&w=320&h=300&rotate=exif",
"https://www.filepicker.io/api/file/XXXXXXXXXXXXXXXX",
"https://www.filepicker.io/api/file/XXXXXXXXXXXXXXXX"
]
Поэтому я просто хочу удалить (исключить) элементы, содержащие строку convert?fit=crop
из массива.
Так как мы можем удалить их с помощью Swift??
2 ответа
Решение
Вы можете использовать метод фильтра:
array_var = array_var.filter {
$0.rangeOfString("convert?fit=crop") == nil
}
Простой способ сделать это
var array_var: [String] = [
"https://www.filepicker.io/api/file/XXXXXXXXXXXXX/convert? fit=crop&w=200&h=200&rotate=exif",
"https://www.filepicker.io/api/file/XXXXXXXXXXXXXX/convert?fit=crop&w=320&h=300&rotate=exif",
"https://www.filepicker.io/api/file/XXXXXXXXXXXXXXXX",
"https://www.filepicker.io/api/file/XXXXXXXXXXXXXXXX"
]
var newArray: [String] = []
for i in 0...array_var.count - 1 {
if array_var[i].rangeOfString("convert?fit=crop") != nil {
newArray.append(array_var[i])
}
}
array_var = newArray