In Tcl 8.0, bound (or limiting) quantifiers are not supported.
To match 9 digits in Tcl 8.0, you'd have to repeat the [0-9]
9 times:
set val [regexp {[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]} $owner]
Bound quantifiers are supported starting with Tcl 8.1 with the introduction of advanced regular expression syntax.
Basic regex syntax available in Tcl 8.0 only includes:
. Matches any character.
* Matches zero or more instances of the previous pattern item.
+ Matches one or more instances of the previous pattern item.
? Matches zero or one instances of the previous pattern item.
( ) Groups a subpattern. The repetition and alternation operators apply to the preceding subpattern.
| Alternation.
[ ] Delimit a set of characters. Ranges are specified as [x-y]. If the first character in the set is ^, then there is a match if the remaining characters in the set are not present.
^ Anchor the pattern to the beginning of the string. Only when first.
$ Anchor the pattern to the end of the string. Only when last.
See Practical Programming in Tcl and Tk, 3rd Ed.
© 1999, Brent Welch, Ch 11, p. 146.