iOS — разделить строку на ключевые слова и фразы

#swift

#быстрый

Вопрос:

Поэтому я использую FireStore в качестве своего бэкэнда. У меня есть поле под названием keywords, в котором пользователи могут искать продукты без необходимости вводить полное название товара, т.Е. «Клубничный торт» будет сохранен как so:

 0 "s"
1 "st"
2 "str"
3 "stra"
4 "straw"
 

Однако проблема заключается в полном сроке — клубничный торт будет сохранен таким образом:

 56 "strawberrycake"
 

Но я также хотел бы, чтобы этот результат появлялся, когда пользователи просто вводят «торт», однако из-за того, что термин «торт» не сохраняется или термин «торт» разделен на отдельные символы, это невозможно.
Это код, который у меня есть в настоящее время:

 extension Array {
    func splitted(into size: Int) -> [[Element]] {
        var splittedArray = [[Element]]()
        if self.count >= size {
        for index in 0...self.count {
            if index % size == 0 amp;amp; index != 0 {
                splittedArray.append(Array(self[(index - size)..<index]))
            } else if (index == self.count){
                splittedArray.append(Array(self[index - 1..<index]))
            }
        }
        } else {
            splittedArray.append(Array(self[0..<self.count]))
        }
        return splittedArray
    }
}
 

Я считаю, что функции необходимо будет обнаруживать пробелы и разделять их на символы, независимо от того, что находится после пробела, а затем удалять пробелы для полного поискового запроса? Это моя теория.

И идея о том, как я могу этого добиться?

Комментарии:

1. Неясно, чего вы пытаетесь достичь. Не могли бы вы, пожалуйста, отредактировать свой вопрос и добавить четкий пример ввода и ожидаемого результата? В вашем вопросе нет массива.

2. Если у вас есть данные в вашем Firestore, вы можете получить их и работать с «панелью поиска» в swift. Я думаю, что это решает ваш вопрос.