跳到主内容
UniKit

文本模板

用 {{变量}} 或 ${变量} 占位符批量填充文本:支持默认值 {{name|默认}}、未匹配变量的保留/清空/标记三种策略、每行一组变量的批量渲染与 {{#each}} 循环,并给出已用、未用与缺失变量报告。

浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。

模板与变量

占位符支持 {{name}} 与 ${name} 两种写法,默认值写作 {{name|默认}};循环语法默认关闭,循环体内 {{.}} 表示当前项,列表用逗号或换行分隔。

占位语法
未匹配变量

渲染结果

填入模板与变量后即可看到渲染结果。

这个工具能做什么

  • 把一份模板套到几十条数据上:邀请函、通知短信、工资条说明这类「只有几个字段不同」的文本,用每行一组变量一次生成。
  • 给运营或客服同事留一个填空模板,占位符写作 {{客户名}},对方只要照着填「键=值」清单,不用碰任何代码。
  • 整理接口文档或配置片段:用 {{host}}、{{token}} 占位,渲染时把测试环境的值批量替换进去。
  • 排查「模板里到底缺哪个变量」:渲染报告会列出已用、未使用与未匹配的变量名。

示例

输入

模板:你好,{{name}}!你在 {{city}}。
变量:name=小明

输出

你好,小明!你在 {{city}}。

默认策略是「保留原文」,所以没有提供值的 city 会原样留在输出里,同时在「未匹配变量」中列出。

常见问题

{{name}} 和 ${name} 有什么区别?

只是写法不同,两种语法功能完全一致,用界面上的「占位语法」切换即可。选 {{name}} 适合写邮件、通知这类纯文本;如果你的模板本身要嵌进 JavaScript 模板字符串,选 ${name} 更贴合习惯。注意两种语法不要混用,工具一次只识别一种。

变量没提供值时会怎样?

默认「保留原文」,把 {{name}} 原样留在结果里并列入未匹配变量,方便你发现漏填。另外还有「清空」(替换为空字符串)和「标记 [[变量]]」两种策略,后者适合在长文本里快速定位缺失位置。

默认值怎么写?

在变量名后面加竖线和默认值,例如 {{city|北京}}。只有变量表里完全没有这个键时才会用默认值;如果你写了 city=(空值),工具认为你已经明确给了空字符串,不会再套默认值。

循环语法怎么用?

打开「启用循环语法」后可以写 {{#each tags}}<{{.}}>{{/each}},列表变量用逗号、分号或换行分隔,循环体内 {{.}} 是当前项。循环不支持嵌套,且默认关闭,这样普通模板里的 {{#each}} 字样不会被误解析。

模板和变量会上传到服务器吗?

不会。解析和替换全部在浏览器内存里完成,页面不发任何请求;刷新后输入清空。可以放心贴内部文案和测试环境的 token。

关键词:text templatetemplate fillplaceholder replace批量文本生成模板填充变量替换{{变量}}mass text generation字符串占位符默认值语法

同类工具