Lindenii Project Forge
Login

go-lindenii-common

Common library for the Lindenii Project

Warning: Due to various recent migrations, viewing non-HEAD refs may be broken.

/mailkit/addr.go (raw)

package mailkit

// StripAngleBrackets strips a single "<" from the
// front of the string and a single ">" from the back
// of the string. If either are present, stripped
// returns true; if both are present, balanced also
// returns true.
func StripAngleBrackets(x string) (result string, stripped bool, balanced bool) {
	var tmp string
	if x[0] == '<' {
		tmp = x[1:]
		stripped = true
	} else {
		tmp = x
	}
	if tmp[len(tmp)-1] == '>' {
		result = tmp[:len(tmp)-1]
		if stripped {
			balanced = true
		} else {
			stripped = true
		}
	} else {
		result = tmp
	}
	return
}