You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Thymeleaf中判断变量是否属于字符串集合?

判断Thymeleaf变量是否在字符串集合中

作为Thymeleaf新手,想要实现类似in集合的判断逻辑其实很简单,Thymeleaf结合Spring EL(如果是Spring环境)提供了几种简洁的方式,完全满足你的需求:

方法1:使用Thymeleaf内置工具类#lists

Thymeleaf自带了一系列工具类,其中#lists可以用来处理集合操作,直接用它的contains方法就能检查元素是否在集合中:

<span th:if="${#lists.contains(['fr', 'en', 'bl'], entry.value)}">
    当entry.value在集合中时显示的内容
</span>

这里的['fr', 'en', 'bl']会被自动识别为List集合,#lists.contains()方法会返回布尔值,满足条件时渲染该<span>标签。

方法2:使用Spring EL的in操作符(推荐)

如果你是在Spring Boot环境下使用Thymeleaf,Spring EL的in操作符可以让写法更接近你想要的直观语法,只需要用大括号{}定义集合:

<span th:if="${entry.value in {'fr', 'en', 'bl'}}">
    当entry.value在集合中时显示的内容
</span>

这种写法和你预想的<span th:if="${entry.value} in ['fr','en','bl']">几乎一致,只是把方括号换成大括号(Spring EL中用大括号定义集合),非常容易理解和上手。

额外说明

如果你的项目没有依赖Spring(纯Thymeleaf环境),方法1依然适用;如果需要频繁复用这个判断逻辑,也可以自定义Thymeleaf方言扩展表达式,但对于新手来说,上面两种方法已经完全够用,无需额外复杂配置。

内容的提问来源于stack exchange,提问作者khaled Rihane

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 03:54:25