Я пытаюсь сравнить строки из текстового поля панели поиска с массивом строк. Мой массив состоит из английских строк. У меня есть строки локализации (бирманская строка в файле локализации) для элементов в массиве. Я пробовал для сравнения строковый метод, предоставленный яблоком. Может ли кто-нибудь решить мою проблему или это все еще загадка, и я зря трачу время. Я публикую один из методов, которые я пробовал, где localized - это настраиваемое расширение строки для строки локализации
searchResultList = keyArray.filter {
return $0.localized.lowercased().contains(ketText.lowercased())
}
Привет, Мартин! Большое спасибо за внимание. Но я решил это сейчас.





Я решил это. Если мы используем обычные методы contains, они возвращают false. Но если мы используем диапазон, он идеально подходит для этой проблемы. Я использовал следующее,
searchResultList = keyArray.filter {
guard let _ = $0.keyString.localized.localizedStandardRange(of: ketText) else { return false }
return true
}
В чем является проблема? Был бы полезен пример конкретный массива и строки поиска вместе с ожидаемым и фактическим результатом.