From cd71fcbcdad9213bbbfadbe84d484f839fbcea33 Mon Sep 17 00:00:00 2001 From: smallchill Date: Sun, 10 Mar 2024 18:02:51 +0800 Subject: [PATCH] =?UTF-8?q?:zap:=20=E4=BC=98=E5=8C=96TemplateUtil?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/tool/utils/TemplateUtil.java | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/blade-core-tool/src/main/java/org/springblade/core/tool/utils/TemplateUtil.java b/blade-core-tool/src/main/java/org/springblade/core/tool/utils/TemplateUtil.java index df252ac..9e1ceed 100644 --- a/blade-core-tool/src/main/java/org/springblade/core/tool/utils/TemplateUtil.java +++ b/blade-core-tool/src/main/java/org/springblade/core/tool/utils/TemplateUtil.java @@ -53,4 +53,25 @@ public class TemplateUtil { return sb.toString(); } + /** + * 解析模版 + * + * @param template 模版 + * @param params 参数 + * @return 解析后的字符串 + */ + public static String safeProcess(String template, Kv params) { + Matcher matcher = pattern.matcher(template); + StringBuffer sb = new StringBuffer(); + while (matcher.find()) { + String key = matcher.group(1) != null ? matcher.group(1) : matcher.group(2); + String replacement = params.getStr(key); + if (replacement != null) { + matcher.appendReplacement(sb, replacement); + } + } + matcher.appendTail(sb); + return sb.toString(); + } + }