Package strutil contains string and byte processing functions.
AppendSplitN is like strings.SplitN but appends to and returns dst. Unlike strings.SplitN, an empty separator is not supported. The count n determines the number of substrings to return:
n > 0: at most n substrings; the last substring will be the unsplit remainder. n == 0: the result is nil (zero substrings) n < 0: all substrings
ContainsFold is like strings.Contains but uses Unicode case-folding.
HasPrefixFold is like strings.HasPrefix but uses Unicode case-folding, matching case insensitively.
HasSuffixFold is like strings.HasSuffix but uses Unicode case-folding, matching case insensitively.
IsPlausibleJSON reports whether s likely contains a JSON object, without actually parsing it. It's meant to be a light heuristic.
ParseUintBytes is like strconv.ParseUint, but using a byte.
RegisterCommonString adds common strings to the interned string table. This should be called during init from the main goroutine, not later at runtime.
StringFromBytes returns string(v), minimizing copies for common values of v as previously registered with RegisterCommonString.