go: What is the n parameter in regexp:FindAll()

huangapple go评论82阅读模式
英文:

go: What is the n parameter in regexp:FindAll()

问题

我使用regexp.FindAll()来获取所有匹配项。我不理解参数n的含义,在官方参考文档中也没有解释。我该如何设置这个参数。

// FindAll是Find的“全部”版本;它返回一个切片,其中包含表达式的所有连续匹配项,如包注释中的“全部”描述所定义。
// 返回值为nil表示没有匹配项。
func (re *Regexp) FindAll(b []byte, n int) [][]byte {}
英文:

I use regexp.FindAll() to get all the matches. I don't understand the parameter of n, and in the office reference, there is no explanation. How can I set the parameter.

// FindAll is the 'All' version of Find; it returns a slice of all successive
// matches of the expression, as defined by the 'All' description in the
// package comment.
// A return value of nil indicates no match.
func (re *Regexp) FindAll(b []byte, n int) [][]byte {}

答案1

得分: 5

https://golang.org/pkg/regexp/

> Find(All)?(String)?(Submatch)?(Index)?
>
> 如果出现了 'All',该函数将匹配整个表达式的连续非重叠匹配项。忽略与前一个匹配相邻的空匹配项。返回值是一个切片,包含对应非 'All' 函数的连续返回值。这些函数接受一个额外的整数参数 n;如果 n >= 0,则函数最多返回 n 个匹配项/子匹配项。

英文:

From https://golang.org/pkg/regexp/:

> Find(All)?(String)?(Submatch)?(Index)?
>
> If 'All' is present, the routine matches successive non-overlapping
> matches of the entire expression. Empty matches abutting a preceding
> match are ignored. The return value is a slice containing the
> successive return values of the corresponding non-'All' routine. These
> routines take an extra integer argument, n; if n >= 0, the function
> returns at most n matches/submatches.

huangapple
  • 本文由 发表于 2017年2月13日 13:53:54
  • 转载请务必保留本文链接:https://go.coder-hub.com/42197468.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定