Transfer first library files

This commit is contained in:
Achim Rohn
2025-07-27 17:53:07 +02:00
parent e187673510
commit 728cf90236
7 changed files with 196 additions and 0 deletions
+37
View File
@@ -0,0 +1,37 @@
package ersteller_lib
import (
"bytes"
"fmt"
"regexp"
"strings"
"text/template"
)
func FirstLetterToUpper(name string) string {
return strings.ToUpper(name[:1]) + name[1:]
}
func FirstLetterToLower(name string) string {
return strings.ToLower(name[:1]) + name[1:]
}
func InlineTemplate(templateString string, data any) string {
dollarRegex := regexp.MustCompile(`\$(\w+)\$`)
templateString = dollarRegex.ReplaceAllStringFunc(templateString, func(s string) string {
if strings.HasPrefix(s, "$.") || strings.HasPrefix(s, "$end") || strings.HasPrefix(s, "$else") {
return s
}
return dollarRegex.ReplaceAllString(s, "$.$1$")
})
tmpl, err := template.New("inline").Delims("$", "$").Parse(templateString)
if err != nil {
return fmt.Sprint("Failed to parse template ", err)
}
var buf bytes.Buffer
err = tmpl.Execute(&buf, data)
if err != nil {
return fmt.Sprint("Failed to execute template ", err)
}
return buf.String()
}