Freemarker模板中移除HTML标签:是否有内置函数可用?
Freemarker是否提供移除HTML标签的内置函数?
当然有!Freemarker自带了?strip_html这个内置函数,正好能满足你完全移除字符串中HTML标签的需求。
这个函数会剥离字符串里所有的HTML标签,只留下纯文本内容,特别适合在不允许HTML的上下文(比如页面标题、元数据内容)中使用,避免标签破坏结构或显示异常。
把你假设的模板示例替换成实际可用的版本,就是这样:
<#ftl output_format="HTML"/> <html> <head> <title>${page_title?strip_html}</title> </head> <body> <h1>${page_title?no_esc}</h1> </body> </html>
在这个模板里:
<title>标签中用?strip_html处理后,确保标题只显示纯文本,不会混入HTML标签;<h1>标签里用?no_esc则保留原始的HTML格式,适配允许HTML的上下文场景。
内容的提问来源于stack exchange,提问作者pvorb
相关产品推荐
相关产品推荐

