Regex: Named groups/backreferences
On 9/13/07, liorean <liorean at gmail.com> wrote:
Hello!
Got some questions about named groups:
"Group names must be valid lexical identifiers, and each group name must be defined only once within a regular expression."
- Is this meant to indicate that regex add their own lexical scopes;
No.
partake in the lexical scope of their containing function if any;
No.
that the identifier must be unique within the regex
Yes.
and that that null, true, false, this etc. that are reserved keywords cannot be used (i.e. the Identifier construct); or just that they need to conform to the identifier syntax but reserved keywords are allowed (i.e. the IdentifierName construct)?
The latter, but thanks for asking; I should clarify that in the spec.
- Can (?P=varname) refer to a lexical variable varname from a containing scope,
No.
or just to groups within the regex itself?
Yes.
- If it can refer to a variable in a containing scope, what constraints are put on the variable type, what conversions are made, etc?
N/A.
Ah, just the answers I wanted to hear:)
Hello!
Got some questions about named groups:
"Group names must be valid lexical identifiers, and each group name must be defined only once within a regular expression."
Is this meant to indicate that regex add their own lexical scopes; partake in the lexical scope of their containing function if any; that the identifier must be unique within the regex and that that null, true, false, this etc. that are reserved keywords cannot be used (i.e. the Identifier construct); or just that they need to conform to the identifier syntax but reserved keywords are allowed (i.e. the IdentifierName construct)?
Can (?P=varname) refer to a lexical variable varname from a containing scope, or just to groups within the regex itself?
If it can refer to a variable in a containing scope, what constraints are put on the variable type, what conversions are made, etc?