近期,在处理AI数字人项目时,遇到需求:
客户端呈现实时语音内容,但是转语音时又要过滤掉markdown语法,让这些内容只进行显示,不进行语音转义
首先声明: 本次大模型一个是使用公司自研的,另一个是使用的阿里云的通义千问
以下是基于golang
实现的,核心是 正则匹配 和 markdown语法的判断,可以直接使用。
如果遇到相关问题,可以通过调整 正则匹配 进行完善。
type MarkdownProcessor struct {
inCodeBlock bool
}
func (self *MarkdownProcessor) Do(value string) string {
lines := strings.Split(value, "\n")
var result []string
for _, line := range lines {
trimmedLine := strings.