summaryrefslogtreecommitdiff
path: root/src/pkg/regexp/regexp.go
diff options
context:
space:
mode:
authorPeter Froehlich <peter.hans.froehlich@gmail.com>2009-12-24 08:43:35 +1100
committerPeter Froehlich <peter.hans.froehlich@gmail.com>2009-12-24 08:43:35 +1100
commit6b23b77e390673e086731e93a8dada9d02f64587 (patch)
tree5f7d09ad848cff998c5810260624be0a37a6743f /src/pkg/regexp/regexp.go
parentef52bde09efcb33ad0fb22172dc2edb12b226939 (diff)
downloadgolang-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.go3
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.