JSTLfn:subStringBetween?

JSTL fn:subStringBetween?

我有一个像这样的字符串 "Promote by abc@gmail.com",我想得到 "abc" 子字符串。

如果我单独尝试,

${fn:subStringAfter("Promote by abc@gmail.com", "by ")} gives "abc@gmail.com"

现在我也想去掉'@'后面的部分

我试过像这样嵌套 JSTL 函数:

${fn:substringBefore(${fn:substringAfter("Promote by abc@gmail.com", "by ")}, "@")} 

但是嵌套不起作用。只有 substringBefore 和 subStringAfter 可以单独工作。

有什么办法吗?

只需使用一个变量来存储您的字符串操作函数:

<c:set var = "yourString" value = "${fn:subStringAfter("Promote by abc@gmail.com", "by ")} " />
<c:set var = "yourString" value = "${fn:substringBefore(yourString, '@')}" />

现在 yourString 已设置为所需的值。