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

如何使用Freemarker表达式提取并显示姓名中的名

用FreeMarker提取姓名中的名(Sam)的方法

嘿,要从字符串姓名 = Sam Jones里只显示名Sam,用FreeMarker可以通过字符串处理函数轻松实现,给你两种实用的方案:

方案一:拆分字符串分步处理

假设存储该字符串的变量名为userNameStr,可以这样写表达式:

${userNameStr?split('=')[1]?trim?split(' ')[0]}

咱们拆解下每一步的作用:

  • ?split('='):把原字符串按等号分割成数组,得到 ["姓名 ", " Sam Jones"]
  • [1]:取数组的第二个元素(索引从0开始),也就是带空格的名字部分 " Sam Jones"
  • ?trim:去掉该字符串前后的空格,得到干净的 "Sam Jones"
  • ?split(' '):再按空格分割成数组 ["Sam", "Jones"]
  • [0]:取数组的第一个元素,就是咱们要的Sam

方案二:先截取有效内容再拆分

如果觉得分步拆分有点繁琐,也可以先用substringAfter直接获取等号后的内容,再处理:

${userNameStr?substringAfter('=')?trim?split(' ')[0]}

?substringAfter('=')会直接提取等号后面的所有内容,后续的?trim和拆分步骤和方案一一致,最终也能得到Sam。

特殊情况:如果已经拿到全名

要是你已经把Sam Jones单独存成了变量(比如fullName),那表达式就更简单了:

${fullName?split(' ')[0]}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 09:07:51