Files
2026-07-30 09:51:25 +07:00

32 lines
713 B
Go

package utils
import (
"regexp"
"strings"
)
var nonAlphanumericRegexp = regexp.MustCompile(`[^a-z0-9]+`)
// UnderscoreString mengubah string judul/nama menjadi format_ular (misal: "Evolusi Mega" -> "evolusi_mega")
func UnderscoreString(s string) string {
s = strings.ToLower(strings.TrimSpace(s))
s = strings.ReplaceAll(s, "&", "and")
s = nonAlphanumericRegexp.ReplaceAllString(s, "_")
s = strings.Trim(s, "_")
if s == "" {
s = "underscore_string"
}
return s
}
func Slugify(s string) string {
s = strings.ToLower(strings.TrimSpace(s))
s = strings.ReplaceAll(s, "&", "and")
s = nonAlphanumericRegexp.ReplaceAllString(s, "-")
s = strings.Trim(s, "-")
if s == "" {
s = "slugify"
}
return s
}