Package: wnpp Severity: wishlist Owner: Stephen Gelman <[email protected]>
* Package name : golang-github-charlievieth-strcase Version : 0.0.5-1 Upstream Author : Charlie Vieth * URL : https://github.com/charlievieth/strcase * License : Expat Programming Lang: Go Description : Case-insensitive implementation of Go's strings package. Package strcase (/) and bytcase (/bytcase/README.md) are case- insensitive and Unicode aware implementations of the Go standard library's strings (https://pkg.go.dev/strings) and bytes (https://pkg.go.dev/bytes) packages that are accurate, fast, and never allocate memory. . Simple Unicode case-folding is used for all comparisons. This matches the behavior of strings.EqualFold (https://pkg.go.dev/strings#EqualFold) and regexp.Regexp (https://pkg.go.dev/regexp#Regexp) (when the pattern is compiled with the case-insensitive flag (?i)) and is more accurate (and significantly more efficient) than using strings.ToLower (https://pkg.go.dev/strings#ToLower) or strings.ToUpper (https://pkg.go.dev/strings#ToUpper) to normalize the needle / haystack before searching. . **Note:** The bytcase package is analogous to the strcase package; whatever applies to strcase also applies to bytcase. For simplicity, the documentation primarily refers to strcase. Unless otherwise noted, all comments apply to both packages. . Overview . * Drop-in replacement for the strings (https://pkg.go.dev/strings) and bytes (https://pkg.go.dev/bytes) packages that provides Unicode aware case-insensitive matching. * Simple Unicode case-folding is used for all comparisons - making it more accurate than using strings.ToLower (https://pkg.go. dev/strings#ToLower) or strings.ToUpper (https://pkg.go.dev/strings#ToUpper) for case- insensitivity. * Any string matched by strcase or bytcase will also match with strings.EqualFold (https://pkg.go.dev/strings#EqualFold) or bytes.EqualFold (https://pkg.go.dev/bytes#EqualFold) * Fast and optimized for amd64 and arm64. For non-pathological inputs strcase is only 25-50% slower than the strings package. * On average strcase/bytcase are 25x faster than using than using a case-insensitive regexp.Regexp (https://pkg.go.dev/regexp#Regexp) (see the below benchmarks section). This is a dependency for the latest version of moor and will be maintained by the go packaging team.

