如何在 FreeMarker 中为数据字符串的所有行添加一个字符?

How to prepend a character to all lines of a data string in FreeMarker?

我有一个带有多行字符串字段的 POJO,例如

public class Reply {
    public String body;
}

body 的内容可能是

This is
a multiline
body.

我想产生这个输出

Hello,
this is the reply:

> This is
> a multiline
> body.

Have a nice day!

也就是说,我想在Reply.body的每一行前面加上>字符。

我可以用 FreeMarker 实现吗? (或者任何其他适用于 POJO 实例的模板引擎?)

<#list Reply.body?split("\n") as line>
> ${line}
</#line>

也许你可以用 newline + > 替换换行符?例如

Reply.body?replace("(\n)", "\n>", 'r')