Удалить элементы из массива, который содержит определенную строку в 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
Другие вопросы по тегам