gpt4 book ai didi

guava - 使用 Google Guava 进行不区分大小写的过滤

转载 作者:行者123 更新时间:2023-12-01 08:07:04 29 4
gpt4 key购买 nike

当前,我正在使用以下代码在映射中创建过滤器以匹配并提供过滤后的结果集列表。

final Map filteredMap = Maps.filterKeys(mymap, Predicates.containsPattern("^Xyz"));

但是 Guava Predicates.containsPattern 进行区分大小写的匹配。

我应该如何使用 containsPattern 进行不区分大小写的匹配。

最佳答案

采用

Predicates.contains(Pattern.compile("^Xyz", Pattern.CASE_INSENSITIVE))

而是作为谓词。请参阅核心 Java Pattern Predicates.contains .

编辑 (在OP的评论之后):是的,你可以写:
Predicates.containsPattern("(?i)^Xyz"))

(请参阅 Pattern 的文档:不区分大小写的匹配也可以通过嵌入的标志表达式 (?i) 来启用。)但它的 IMO 不那么自我解释,加上编译 Pattern在循环中使用时,可以将第一个示例缓存到一些私有(private)静态最终常量,这可以提高性能。

关于guava - 使用 Google Guava 进行不区分大小写的过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16560635/

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