1
0
mirror of https://github.com/golang/go synced 2024-11-24 05:30:24 -07:00

strings: document the use of simple case-folding in EqualFold

Fixes #52022

Change-Id: I077fc062dfd02f79eb83713490efbe0bdc783d8b
Reviewed-on: https://go-review.googlesource.com/c/go/+/396616
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
Auto-Submit: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Emmanuel Odeke <emmanuel@orijtech.com>
This commit is contained in:
hopehook 2022-03-30 15:47:57 +08:00 committed by Emmanuel Odeke
parent 153c18a515
commit f8e70fc9a6
2 changed files with 9 additions and 2 deletions

View File

@ -95,7 +95,12 @@ func ExampleCut() {
func ExampleEqualFold() {
fmt.Println(strings.EqualFold("Go", "go"))
// Output: true
fmt.Println(strings.EqualFold("AB", "ab")) // true because comparison uses simple case-folding
fmt.Println(strings.EqualFold("ß", "ss")) // false because comparison does not use full case-folding
// Output:
// true
// true
// false
}
func ExampleFields() {

View File

@ -1041,8 +1041,10 @@ func ReplaceAll(s, old, new string) string {
}
// EqualFold reports whether s and t, interpreted as UTF-8 strings,
// are equal under Unicode case-folding, which is a more general
// are equal under simple Unicode case-folding, which is a more general
// form of case-insensitivity.
//
// EqualFold(s, t) is equivalent to Tolower(s) == Tolower(t).
func EqualFold(s, t string) bool {
for s != "" && t != "" {
// Extract first rune from each string.