mirror of
https://github.com/bootdotdev/fcc-learn-golang-assets.git
synced 2025-12-10 07:11:19 +00:00
54 lines
896 B
Go
54 lines
896 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"strings"
|
|
)
|
|
|
|
func removeProfanity(message *string) {
|
|
if message == nil {
|
|
return
|
|
}
|
|
messageVal := *message
|
|
messageVal = strings.ReplaceAll(messageVal, "dang", "****")
|
|
messageVal = strings.ReplaceAll(messageVal, "shoot", "*****")
|
|
messageVal = strings.ReplaceAll(messageVal, "heck", "****")
|
|
*message = messageVal
|
|
}
|
|
|
|
// don't touch below this line
|
|
|
|
func test(messages []string) {
|
|
for _, message := range messages {
|
|
if message == "" {
|
|
removeProfanity(nil)
|
|
fmt.Println("nil message detected")
|
|
} else {
|
|
removeProfanity(&message)
|
|
fmt.Println(message)
|
|
}
|
|
}
|
|
}
|
|
|
|
func main() {
|
|
messages := []string{
|
|
"well shoot, this is awful",
|
|
"",
|
|
"dang robots",
|
|
"dang them to heck",
|
|
"",
|
|
}
|
|
|
|
messages2 := []string{
|
|
"well shoot",
|
|
"",
|
|
"Allan is going straight to heck",
|
|
"dang... that's a tough break",
|
|
"",
|
|
}
|
|
|
|
test(messages)
|
|
test(messages2)
|
|
|
|
}
|