mirror of
https://github.com/golang/go
synced 2024-11-19 02:54:42 -07:00
regexp: add more examples for Regexp methods
Since I first started on this CL, most of the methods have had examples added by other folks, so this is now one new example, and additions to two existing examples for extra clarity. The issue has a comment about not necessarily having examples for all methods, but I recall finding this package pretty confusing when I first used it, and having concrete examples would have really helped me navigate all the different options. There are more String methods with examples now, but I think seeing how the byte-slice methods work could also be helpful to explain the differences. Updates #21450 Change-Id: I27b4eeb634fb8ab59f791c0961cce79a67889826 Reviewed-on: https://go-review.googlesource.com/c/go/+/120145 Reviewed-by: Daniel Martí <mvdan@mvdan.cc> Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Daniel Martí <mvdan@mvdan.cc> TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
parent
09824ccfe5
commit
5253a6dc72
@ -94,9 +94,11 @@ func ExampleRegexp_FindSubmatch() {
|
|||||||
func ExampleRegexp_Match() {
|
func ExampleRegexp_Match() {
|
||||||
re := regexp.MustCompile(`foo.?`)
|
re := regexp.MustCompile(`foo.?`)
|
||||||
fmt.Println(re.Match([]byte(`seafood fool`)))
|
fmt.Println(re.Match([]byte(`seafood fool`)))
|
||||||
|
fmt.Println(re.Match([]byte(`something else`)))
|
||||||
|
|
||||||
// Output:
|
// Output:
|
||||||
// true
|
// true
|
||||||
|
// false
|
||||||
}
|
}
|
||||||
|
|
||||||
func ExampleRegexp_FindString() {
|
func ExampleRegexp_FindString() {
|
||||||
@ -182,9 +184,13 @@ func ExampleRegexp_MatchString() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func ExampleRegexp_NumSubexp() {
|
func ExampleRegexp_NumSubexp() {
|
||||||
|
re0 := regexp.MustCompile(`a.`)
|
||||||
|
fmt.Printf("%d\n", re0.NumSubexp())
|
||||||
|
|
||||||
re := regexp.MustCompile(`(.*)((a)b)(.*)a`)
|
re := regexp.MustCompile(`(.*)((a)b)(.*)a`)
|
||||||
fmt.Println(re.NumSubexp())
|
fmt.Println(re.NumSubexp())
|
||||||
// Output:
|
// Output:
|
||||||
|
// 0
|
||||||
// 4
|
// 4
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -348,6 +354,7 @@ func ExampleRegexp_FindIndex() {
|
|||||||
// [18 33]
|
// [18 33]
|
||||||
// option1: value1
|
// option1: value1
|
||||||
}
|
}
|
||||||
|
|
||||||
func ExampleRegexp_FindAllSubmatchIndex() {
|
func ExampleRegexp_FindAllSubmatchIndex() {
|
||||||
content := []byte(`
|
content := []byte(`
|
||||||
# comment line
|
# comment line
|
||||||
@ -373,3 +380,13 @@ func ExampleRegexp_FindAllSubmatchIndex() {
|
|||||||
// option2
|
// option2
|
||||||
// value2
|
// value2
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func ExampleRegexp_FindAllIndex() {
|
||||||
|
content := []byte("London")
|
||||||
|
re := regexp.MustCompile(`o.`)
|
||||||
|
fmt.Println(re.FindAllIndex(content, 1))
|
||||||
|
fmt.Println(re.FindAllIndex(content, -1))
|
||||||
|
// Output:
|
||||||
|
// [[1 3]]
|
||||||
|
// [[1 3] [4 6]]
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user