30 lines
727 B
Go
30 lines
727 B
Go
package main
|
|
|
|
import (
|
|
"regexp"
|
|
"strings"
|
|
)
|
|
|
|
const (
|
|
runeIrcBold = '\x02'
|
|
runeIrcColor = '\x03'
|
|
runeIrcReset = '\x0f'
|
|
runeIrcReverse = '\x16'
|
|
runeIrcItalic = '\x1d'
|
|
runeIrcUnderline = '\x1f'
|
|
)
|
|
|
|
var (
|
|
rxIrcColor = regexp.MustCompile(string(runeIrcColor) + "([0-9]*(,[0-9]*)?)")
|
|
)
|
|
|
|
func stripIrcFormatting(text string) string {
|
|
text = strings.Replace(text, string(runeIrcBold), "", -1)
|
|
text = strings.Replace(text, string(runeIrcReset), "", -1)
|
|
text = strings.Replace(text, string(runeIrcReverse), "", -1)
|
|
text = strings.Replace(text, string(runeIrcItalic), "", -1)
|
|
text = strings.Replace(text, string(runeIrcUnderline), "", -1)
|
|
text = rxIrcColor.ReplaceAllLiteralString(text, "")
|
|
return text
|
|
}
|