在swift UISearchBar中以任何顺序过滤多个单词的数组

时间:2015-08-18 18:50:04

标签: swift

我有一个UISearchBar和一个tableView,它显示一个Food项目数组,它有一个名为desc的变量,我正在搜索。我的搜索功能如下所示。目前,这非常适合搜索不区分大小写的精确字符串匹配和字序。

例如,我正在搜索的项目有很长的多个单词字符串,例如"牛奶,整个,3.25%的乳脂和#34;。如果你搜索" milk",这个项目就是结果。但是,如果您搜索"全脂牛奶",则此项目不会是结果。我想知道如何更改我的filterContentForSearchText方法以使用多个单词搜索。在这个例子中,我想要搜索"全脂牛奶"包括所有结果,包括"整体"和"牛奶"在他们 - 以任何顺序。

public void create_ConfigStage() {
    stage = new Stage();
    FXMLLoader loader = new FXMLLoader(ClassLoader.getSystemResource("windows/configureTemplates.fxml"));

    // Tell the FXMLLoader to use this object as the controller.
    // Note that if the fxml file has a fx:controller attribute, 
    // loading it will fail with an IllegalStateException:

    loader.setController(this);


    AnchorPane root = null;

    try {
        // Since we set this object as the controller, loading will 
        // initialize all the @FXML fields defined in this instance, and will
        // invoke initialize() on this instance:
        root = loader.load();
        Scene scene = new Scene(root);
        stage.setScene(scene);
        stage.showAndWait();
    } catch (IOException e) {
        e.printStackTrace();
    }

    System.out.println(testVal); // This should show the value updated in initialize()
    System.out.println(words.size()); // This should give the number loaded by FileUtil.readMacroFile(...)
}

0 个答案:

没有答案