Files
chirpy/internal/server/profanity.go
T

23 lines
455 B
Go
Raw Normal View History

package server
import (
"slices"
"strings"
)
var profaneWords = []string{"kerfuffle", "sharbert", "fornax"}
// cleanProfanity replaces profane words with asterisks, case-insensitively,
// matching on whole words only.
func cleanProfanity(body string) string {
words := strings.Split(body, " ")
for i, word := range words {
if slices.Contains(profaneWords, strings.ToLower(word)) {
words[i] = "****"
}
}
return strings.Join(words, " ")
}