diff options
author | Peter Froehlich <peter.hans.froehlich@gmail.com> | 2009-12-24 08:43:35 +1100 |
---|---|---|
committer | Peter Froehlich <peter.hans.froehlich@gmail.com> | 2009-12-24 08:43:35 +1100 |
commit | 6b23b77e390673e086731e93a8dada9d02f64587 (patch) | |
tree | 5f7d09ad848cff998c5810260624be0a37a6743f /src/pkg/regexp/regexp.go | |
parent | ef52bde09efcb33ad0fb22172dc2edb12b226939 (diff) | |
download | golang-6b23b77e390673e086731e93a8dada9d02f64587.tar.gz |
Add query to find number of subexpressions.
This was convenient for me to have without being forced
to parse the regexp myself. I'd understand if it's not
really wanted, but I also think that some meta information
about compiled regexps would be fine.
R=r, rsc
CC=golang-dev
http://codereview.appspot.com/183044
Committer: Rob Pike <r@golang.org>
Diffstat (limited to 'src/pkg/regexp/regexp.go')
-rw-r--r-- | src/pkg/regexp/regexp.go | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/pkg/regexp/regexp.go b/src/pkg/regexp/regexp.go index fd6fbefee..373d6b1af 100644 --- a/src/pkg/regexp/regexp.go +++ b/src/pkg/regexp/regexp.go @@ -677,6 +677,9 @@ func MustCompile(str string) *Regexp { return regexp } +// NumSubexp returns the number of parenthesized subexpressions in this Regexp. +func (re *Regexp) NumSubexp() int { return re.nbra } + // The match arena allows us to reduce the garbage generated by tossing // match vectors away as we execute. Matches are ref counted and returned // to a free list when no longer active. Increases a simple benchmark by 22X. |