${#strings.abbreviate(str,10)}
关于这个,在官方文档的解释中大致意思是当str中的内容过长,就会根据所设定的截取值截取文本,将剩下的部分用...
来代替。
比如说str="12345678910,hhh"
,这个字符串的长度为15
1.设置截取长度为10,即:
${#strings.abbreviate(str,10)}
在前端会显示1234567...
可以看到,连带着...
长度一共是10
2.设置截取长度为15,即:
${#strings.abbreviate(str,15)}
这个时候正好为15,所以会全部显示:12345678910,hhh
也就是说,当截取长度>=str的长度
时就会全部显示
3.设置截取长度为3,即:
${#strings.abbreviate(str,3)}
这时前端显示为...
,你会发现,所有str长度大于3的字符串,在前端显示都是三个点,我相信你想要的绝对不会是这样的效果:
所以在设置截取长度的时候一定要选择好合适的截取长度。(注意截取长度要大于3)
其他常见的字符串使用方法
- 判断是否为空(null)
<span th:if="${name} != null">不为空</span>
<span th:if="${name1} == null">为空</span>
- 判断是否为空字符串
${#strings.isEmpty(name)}
- 是否包含特定字符
注意:这个包含是区分大小写的
${#strings.contains(name,'a')}
下面的这个是不区分大小写的
${#strings.containsIgnoreCase(name,'y')}
- 以特定字符开头
${#strings.startsWith(name,'o')}
- 以特定字符结束
${#strings.endsWith(name, 'o')}
- 获取指定下标的字符
${#strings.indexOf(name,frag)}// 下标
- 截取字符串
${#strings.substring(name,3,5)}// 截取
${#strings.substringAfter(name,prefix)}// 从 prefix之后的一位开始截取到最后,比如 (ywj,y) = wj, 如果是(abccdefg,c) = cdefg//里面有2个c,取的是第一个c
${#strings.substringBefore(name,suffix)}// 同上,不过是往前截取
- 替换字符串
${#strings.replace(name,'las','ler')}// 替换
- 拼接字符串
${#strings.prepend(str,prefix)}// 拼字字符串在str前面
${#strings.append(str,suffix)}// 和上面相反,接在后面
- 变为大写
${#strings.toUpperCase(name)}
- 变为小写
${#strings.toLowerCase(name)}
- 去除字符串中的空白
${#strings.trim(str)}
- 获取字符串长度
${#strings.length(str)}