gpt4 book ai didi

aem - 使用 querybuilder 在 CQ5 中进行不区分大小写的搜索

转载 作者:行者123 更新时间:2023-12-02 04:23:06 26 4
gpt4 key购买 nike

请建议如何在 CQ5 中使用 querybuilder 实现不区分大小写的搜索。我的代码如下...

paramMap.put("1_property", searchType);
paramMap.put("1_property.value", "%" + searchString + "%");
paramMap.put("1_property.operation", "like");
paramMap.put("2_property", "documentId");
paramMap.put("2_property.operation", "exists");
paramMap.put("3_orderby.sort", "asc");
paramMap.put("p.limit", "0");

searchType 是节点属性searchString为需要匹配的字符串

目前,它执行区分大小写的搜索。我尝试了这里提到的解决方案 http://www.wemblog.com/2013/04/how-to-create-custom-query-predicate-in.html结果没成功。

最佳答案

我遇到了同样的问题,并找到了使用 QueryBuilder 进行不区分大小写搜索的 3 种可能的解决方案:

  1. 自定义查询谓词您上面提到的。

  2. 全文谓词。
    缺点:它很贪婪,会找到所有 %your_search_query% 匹配项。
    详细信息在这里:http://maxbarrass.blogspot.com/2014/05/jcr-predicate-operations-in-aem.html

  3. 节点名称谓词。
    这是一种解决方法,仅当您搜索 jcr:title 属性时才有效,因为在大多数情况下,nodename = 小写并转义了 jcr:title。
    因此,您可以搜索 nodename 而不是 jcr:title 属性。

第三种方法对我来说有好处。

关于aem - 使用 querybuilder 在 CQ5 中进行不区分大小写的搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28878727/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com