From e295922209fb87c6dcd68ea1560fd16c3e6d808c Mon Sep 17 00:00:00 2001 From: dongyukun <1208714201@qq.com> Date: 星期五, 27 六月 2025 09:36:51 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/feature/ai' --- src/views/ai/utils/utils.ts | 17 +++++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-) diff --git a/src/views/ai/utils/utils.ts b/src/views/ai/utils/utils.ts index ef36350..2688533 100644 --- a/src/views/ai/utils/utils.ts +++ b/src/views/ai/utils/utils.ts @@ -11,3 +11,20 @@ export const hasChinese = (str: string) => { return /[\u4e00-\u9fa5]/.test(str) } + +export const formatReasoningContent = (content: string) => { + // 匹配 "数字" + "." + ("中文"或"空格") + "其他内容" + ":" + const stepRegex = /(\d+\.(?:[\u4e00-\u9fa5]|\s)[^:]*:)(\s*)/g; + + // 替换逻辑: + // - 如果标题后没有换行(即 `$2` 是空或只有空格),则添加 `<br>` + // - 如果标题后已有换行(如 `\n` 或 `<br>`),则不额外添加 + return content.replace( + stepRegex, + (match, title, whitespace) => { + const hasNewline = whitespace.includes('\\n') || whitespace.includes('<br>'); + const lineBreak = hasNewline ? '' : '<br>'; + return `<strong style="font-size: 16px; line-height: 32px; color: #FFFFFF;">${title}</strong>${lineBreak}`; + } + ); +} -- Gitblit v1.9.3