Name Description Size Coverage
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] --- 1676 -
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] --- 740 -
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] --- 560 -
duplicate-names-match.js --- description: Matching behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] includes: [compareArray.js] --- 1695 -
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] --- 796 -
duplicate-names-replace.js --- description: String.prototype.replace behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] --- 760 -
duplicate-names-replaceall.js --- description: String.prototype.replaceAll behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] --- 710 -
duplicate-names-search.js --- description: String.prototype.search behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] --- 416 -
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] --- 536 -
duplicate-names-test.js --- description: Matching behavior with duplicate named capture groups esid: prod-GroupSpecifier features: [regexp-duplicate-named-groups] --- 657 -
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 -