内容过滤器功能不起作用...找不到错误

安德鲁·阿基诺(Andrew Aquino)

我一直在搞弄Swift的XCode 6 Playground中的内容过滤器系统,想法是,如果我输入一个包含多个单词的字符串(例如:“ Apple Oranges Bananas”),该函数会将这个字符串分成一个数组,然后循环通过数据库使用这些单词中的任何一个,如果存在匹配项,则应返回true。因此,如果我输入整个单词,我的函数将返回true,但是当我输入单个字母时,函数将返回false ...我使用了“ RangeOfString”行,因此它应该逐个字符地经过单词,但我不知道。 。

这是代码。

    // Playground - noun: a place where people can play

import UIKit

class Person {
    var name = ""
    var age = 0

    init(name: String, age:Int) {
        self.name = name
        self.age = age
    }
}

var filteredItems = [Person]()

var items = [ Person(name: "Anders", age: 23), Person(name: "Alice", age: 56), Person(name: "Amanda", age: 88)]

items.append(Person(name: "Andrew", age: 23))

func filterContentForSearchText(searchText : String) -> Bool
{
    var filtered = false

    //Filter the array using the filter method
    filteredItems = items.filter({( search : Person) -> Bool in

        let stringMatch = queryValidator(searchText, search.name)
        let intMatch = queryValidator(searchText, String(search.age))

        filtered = (stringMatch != false || intMatch != false)
        return (stringMatch != false || intMatch != false)
    })
    return filtered
}

func queryValidator(search : String, database : String) -> Bool
{
    //Function that splits search query into multiple querys
    let query = search.uppercaseString.componentsSeparatedByString(" ")
    var queryFound = false

    for(var i = 0; i < query.count; i++)
    {
        let match = query[i].uppercaseString.rangeOfString(database.uppercaseString)

        if(match != nil)
        {
            queryFound = true
        }
    }

    return queryFound
}


filterContentForSearchText("a")

任何帮助将非常感激!!

ng

string.rangeOfString没有前缀匹配。因此,如果您使用“ a”进行搜索,则您的数组中没有名称为“ a”的任何人。如果要进行前缀匹配,请尝试使用String.hasPrefix(如https://developer.apple.com/library/mac/Documentation/General/Reference/SwiftStandardLibraryReference/index.html中所述)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

错误:找不到功能

网格视图的自定义过滤器不起作用:找不到'id'= all

反应表全局过滤器错误不起作用

angularjs过滤器功能不起作用

Swift 3.0过滤器功能不起作用

错误:找不到功能“指南”

$ .ajax错误功能不起作用

ErrorHandler不起作用->编译错误/找不到对象

Pandas DF堆叠式过滤器不起作用,范围出现错误

MSVC错误?找不到功能受限的成员

JavaScript跳转功能失败,找不到错误

错误:模板解析错误:在角度中找不到管道“过滤器”

为什么我的Bash过滤器功能不起作用?

EXT JS:DataStore过滤器功能不起作用

为什么这个(Django)“过滤器”功能不起作用?

清除过滤器功能不起作用 Vue

使用 Redux 时过滤器功能不起作用

Woocommerce Xero 功能不起作用 - “错误:“使用 $this...”

更改密码功能不起作用-哈希错误

功能不起作用。语法错误?

PHP错误-标头睡眠功能不起作用

节点Js:在以下文件过滤器代码中找不到错误

错误->使用angular4时找不到管道“过滤器”

我该怎么做才能纠正“过滤器()”中的错误,然后“找不到对象”?

找不到中间过滤器的组合

Express + AngularJS + HTML:ng-include不起作用(404-找不到页面错误)

某些命令不起作用:make、wget - 找不到错误消息命令

mpdf不起作用[致命错误:找不到特征'Mpdf \ Strict'

Qt Creator编译错误“找不到-lGL”。其他解决方案不起作用