Thymeleaf技术问题:如何判断列表包含带指定子串的元素
Thymeleaf 一行表达式判断列表是否存在含指定子串的元素
你可以使用Thymeleaf的#lists.exists()方法结合lambda表达式实现需求,无需显式迭代,一行表达式即可完成判断:
<ul th:if="${#lists.exists(data, item -> #strings.contains(item, '('))}"> <!-- UL标签内容 --> </ul>
说明:
#lists.exists(list, predicate)是Thymeleaf 3.0及以上版本的方法,它会遍历列表元素,只要有任意一个元素满足断言条件,就返回true。- 断言
item -> #strings.contains(item, '(')的逻辑和你之前迭代时的判断一致,用于检查元素是否包含子串(。 - 将整个表达式放在
th:if中,条件满足时UL标签会被正常渲染。
内容的提问来源于stack exchange,提问作者gene b.
相关产品推荐
相关产品推荐

