Name Description Size
browser.js 0
duplicate-names-exec.js --- description: Matching behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] includes: [compareArray.js] --- 1795
duplicate-names-group-property-enumeration-order.js --- description: Enumeration order of the groups object with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] includes: [compareArray.js] --- 859
duplicate-names-match-indices.js --- description: match indices with duplicate named capture groups esid: sec-makematchindicesindexpairarray features: [regexp-duplicate-named-groups, regexp-match-indices] includes: [compareArray.js] --- 679
duplicate-names-match.js --- description: Matching behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] includes: [compareArray.js] --- 1814
duplicate-names-matchall.js --- description: String.prototype.search behavior with duplicate named capture groups esid: prod-GroupSpecifier includes: [compareArray.js,compareIterator.js] features: [regexp-duplicate-named-groups] --- 915
duplicate-names-replace.js --- description: String.prototype.replace behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] --- 879
duplicate-names-replaceall.js --- description: String.prototype.replaceAll behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] --- 829
duplicate-names-search.js --- description: String.prototype.search behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] --- 535
duplicate-names-split.js --- description: String.prototype.search behavior with duplicate named capture groups esid: prod-GroupSpecifier includes: [compareArray.js] features: [regexp-duplicate-named-groups] --- 655
duplicate-names-test.js --- description: Matching behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] --- 776
functional-replace-global.js --- description: > Function argument to String.prototype.replace gets groups as the last argument esid: sec-regexp.prototype-@@replace features: [regexp-named-groups] info: | RegExp.prototype [ @@replace ] ( string, replaceValue ) 14. Repeat, for each result in results, j. Let namedCaptures be ? Get(result, "groups"). k. If functionalReplace is true, then iv. If namedCaptures is not undefined, 1. Append namedCaptures as the last element of replacerArgs. --- 1841
functional-replace-non-global.js --- description: > Function argument to String.prototype.replace gets groups as the last argument esid: sec-regexp.prototype-@@replace features: [regexp-named-groups] info: | RegExp.prototype [ @@replace ] ( string, replaceValue ) 14. Repeat, for each result in results, j. Let namedCaptures be ? Get(result, "groups"). k. If functionalReplace is true, then iv. If namedCaptures is not undefined, 1. Append namedCaptures as the last element of replacerArgs. --- 1473
groups-object-subclass-sans.js --- description: > Test the groups object on RegExp subclass results that do not have their own. esid: sec-regexpbuiltinexec features: [regexp-named-groups] info: | Runtime Semantics: RegExpBuiltinExec ( R, S ) 24. If _R_ contains any |GroupName|, then a. Let _groups_ be ObjectCreate(*null*). 25. Else, a. Let _groups_ be *undefined*. 26. Perform ! CreateDataProperty(_A_, `"groups"`, _groups_). --- 1203
groups-object-subclass.js --- description: > Test the groups object on RegExp subclass results that have their own. esid: sec-regexpbuiltinexec features: [regexp-named-groups] info: | Runtime Semantics: RegExpBuiltinExec ( R, S ) 24. If _R_ contains any |GroupName|, then a. Let _groups_ be ObjectCreate(*null*). 25. Else, a. Let _groups_ be *undefined*. 26. Perform ! CreateDataProperty(_A_, `"groups"`, _groups_). --- 1123
groups-object-undefined.js --- description: The groups object is created unconditionally. includes: [propertyHelper.js] esid: sec-regexpbuiltinexec features: [regexp-named-groups] info: | Runtime Semantics: RegExpBuiltinExec ( R, S ) 24. If _R_ contains any |GroupName|, then a. Let _groups_ be ObjectCreate(*null*). 25. Else, a. Let _groups_ be *undefined*. 26. Perform ! CreateDataProperty(_A_, `"groups"`, _groups_). --- 1074
groups-object-unmatched.js --- description: > Test the groups object with matched and unmatched named captures. esid: sec-regexpbuiltinexec features: [regexp-named-groups] info: | Runtime Semantics: RegExpBuiltinExec ( R, S ) 24. If _R_ contains any |GroupName|, then a. Let _groups_ be ObjectCreate(*null*). 25. Else, a. Let _groups_ be *undefined*. 26. Perform ! CreateDataProperty(_A_, `"groups"`, _groups_). --- 1317
groups-object.js --- description: Properties of the groups object are created with CreateDataProperty includes: [propertyHelper.js] esid: sec-regexpbuiltinexec features: [regexp-named-groups] info: | Runtime Semantics: RegExpBuiltinExec ( R, S ) 24. If _R_ contains any |GroupName|, then a. Let _groups_ be ObjectCreate(*null*). 25. Else, a. Let _groups_ be *undefined*. 26. Perform ! CreateDataProperty(_A_, `"groups"`, _groups_). --- 1265
groups-properties.js --- description: Properties of the groups object are created with CreateDataProperty includes: [compareArray.js, propertyHelper.js] esid: sec-regexpbuiltinexec features: [regexp-named-groups] info: | Runtime Semantics: RegExpBuiltinExec ( R, S ) 25. For each integer i such that i > 0 and i ≤ n f. If the ith capture of R was defined with a GroupName, i. Let s be the StringValue of the corresponding RegExpIdentifierName. ii. Perform ! CreateDataProperty(groups, s, capturedValue). --- 1255
lookbehind.js --- description: Named groups can be used in conjunction with lookbehind esid: prod-GroupSpecifier features: [regexp-named-groups, regexp-lookbehind] includes: [compareArray.js] --- 2119
non-unicode-match.js --- description: Basic matching cases with non-Unicode groups esid: prod-GroupSpecifier features: [regexp-named-groups] includes: [compareArray.js] --- 2166
non-unicode-property-names-invalid.js --- author: Michael Saboff description: Invalid exotic named group names in non-Unicode RegExps esid: prod-GroupSpecifier features: [regexp-named-groups] --- 1359
non-unicode-property-names-valid.js --- author: Michael Saboff description: Exotic named group names in non-Unicode RegExps esid: prod-GroupSpecifier features: [regexp-named-groups] --- 4241
non-unicode-property-names.js --- description: Exotic named group names in non-Unicode RegExps esid: prod-GroupSpecifier features: [regexp-named-groups] --- 970
non-unicode-references.js --- description: Named backreferences in non-Unicode RegExps esid: prod-GroupSpecifier features: [regexp-named-groups] includes: [compareArray.js] --- 1440
shell.js --- description: Compare the values of an iterator with an array of expected values defines: [assert.compareIterator] --- 1166
string-replace-escaped.js --- description: Do not replace $<> preceded with $ esid: sec-getsubstitution features: [regexp-named-groups] info: | Runtime Semantics: GetSubstitution( matched, str, position, captures, namedCaptures, replacement ) 12. These $ replacements are done left-to-right, and, once such a replacement is performed, the new replacement text is not subject to further replacements. Table: Replacement Text Symbol Substitutions Unicode Characters: $$ Replacement text: $ --- 795
string-replace-get.js --- description: Named substitutions are found by getting the property from the groups object esid: sec-getsubstitution features: [regexp-named-groups] info: | Runtime Semantics: GetSubstitution( matched, str, position, captures, namedCaptures, replacement ) Table: Replacement Text Symbol Substitutions Unicode Characters: $< Replacement text: 2. Otherwise, c. Let capture be ? Get(namedCaptures, groupName). d. If capture is undefined, replace the text through > with the empty string. e. Otherwise, replace the text through this following > with ? ToString(capture). --- 1085
string-replace-missing.js --- description: If the group doesn't exist, replace with the empty string esid: sec-getsubstitution features: [regexp-named-groups] --- 922
string-replace-nocaptures.js --- description: If there are no named captures, don't replace $<> esid: sec-getsubstitution features: [regexp-named-groups] info: | Runtime Semantics: GetSubstitution( matched, str, position, captures, namedCaptures, replacement ) Table: Replacement Text Symbol Substitutions Unicode Characters: $< Replacement text: 1. If namedCaptures is undefined, the replacement text is the literal string $<. --- 1237
string-replace-numbered.js --- description: Named groups may be accessed in their replacement string by number esid: sec-getsubstitution features: [regexp-named-groups] info: | Runtime Semantics: GetSubstitution( matched, str, position, captures, namedCaptures, replacement ) Table: Replacement Text Symbol Substitutions Unicode Characters: $n Replacement text: The nth element of captures, where n is a single digit in the range 1 to 9. If n≤m and the nth element of captures is undefined, use the empty String instead. If n>m, the result is implementation-defined. --- 1032
string-replace-unclosed.js --- description: > A missing > following $< means that the $< is taken literally in a replacement string in the context of named capture substitution. esid: sec-getsubstitution features: [regexp-named-groups] --- 691
string-replace-undefined.js --- description: If a named group was not reached, it is replaced by the empty string esid: sec-getsubstitution features: [regexp-named-groups] info: | Runtime Semantics: GetSubstitution( matched, str, position, captures, namedCaptures, replacement ) Table: Replacement Text Symbol Substitutions Unicode Characters: $< Replacement text: 2. Otherwise, c. Let capture be ? Get(namedCaptures, groupName). d. If capture is undefined, replace the text through > with the empty string. --- 971
unicode-match.js --- description: Basic matching cases with Unicode groups esid: prod-GroupSpecifier features: [regexp-named-groups] includes: [compareArray.js] --- 2400
unicode-property-names-invalid.js --- author: Michael Saboff description: Invalid exotic named group names in Unicode RegExps esid: prod-GroupSpecifier features: [regexp-named-groups] --- 1400
unicode-property-names-valid.js --- author: Michael Saboff description: Exotic named group names in Unicode RegExps esid: prod-GroupSpecifier features: [regexp-named-groups] --- 4456
unicode-property-names.js --- description: Exotic named group names in Unicode RegExps esid: prod-GroupSpecifier features: [regexp-named-groups] --- 1535
unicode-references.js --- description: Named backreferences in Unicode RegExps esid: sec-atomescape info: | The production AtomEscape :: [+N] k GroupName evaluates as follows: 1. Search the enclosing RegExp for an instance of a GroupSpecifier for an RegExpIdentifierName which has a StringValue equal to the StringValue of the RegExpIdentifierName contained in GroupName. 2. Assert: A unique such GroupSpecifier is found. 3. Let parenIndex be the number of left capturing parentheses in the entire regular expression that occur to the left of the located GroupSpecifier. This is the total number of times the Atom::(GroupSpecifierDisjunction) production is expanded prior to that production's Term plus the total number of Atom :: (GroupSpecifierDisjunction) productions enclosing this Term. 4. Call BackreferenceMatcher(parenIndex) and return its Matcher result. features: [regexp-named-groups] includes: [compareArray.js] --- 2268