This test checks our implementation of the special RegExp member variables.
Properties of RegExp at startup:
$&: {}
$': {}
$+: {}
$1: {}
$2: {}
$3: {}
$4: {}
$5: {}
$6: {}
$7: {}
$8: {}
$9: {}
$_: {}
$`: {}
input: {}
lastMatch: {}
lastParen: {}
leftContext: {}
length: {2}
name: {RegExp}
rightContext: {}
Properties of RegExp after /(1)(2)(3)(4)(5)(6)(7)(8)(9)(0)/.exec(<1234567890>):
$&: {1234567890}
$': {>}
$+: {0}
$1: {1}
$2: {2}
$3: {3}
$4: {4}
$5: {5}
$6: {6}
$7: {7}
$8: {8}
$9: {9}
$_: {<1234567890>}
$`: {<}
input: {<1234567890>}
lastMatch: {1234567890}
lastParen: {0}
leftContext: {<}
length: {2}
name: {RegExp}
rightContext: {>}
RegExp.$0 does not exist
RegExp.$10 does not exist
RegExp doesn't use RegExp.input
RegExp.input coerces values to strings
Properties of RegExp after /(1)(2)(3)(4)(5)(6)(7)(8)(9)(0)/.exec(XXX):
$&: {1234567890}
$': {>}
$+: {0}
$1: {1}
$2: {2}
$3: {3}
$4: {4}
$5: {5}
$6: {6}
$7: {7}
$8: {8}
$9: {9}
$_: {0}
$`: {<}
input: {0}
lastMatch: {1234567890}
lastParen: {0}
leftContext: {<}
length: {2}
name: {RegExp}
rightContext: {>}
---------- [Cleared RegExp values] ----------
Properties of RegExp after <1234567890>.search(/(1)(2)(3)(4)(5)(6)(7)(8)(9)(0)/):
$&: {1234567890}
$': {>}
$+: {0}
$1: {1}
$2: {2}
$3: {3}
$4: {4}
$5: {5}
$6: {6}
$7: {7}
$8: {8}
$9: {9}
$_: {<1234567890>}
$`: {<}
input: {<1234567890>}
lastMatch: {1234567890}
lastParen: {0}
leftContext: {<}
length: {2}
name: {RegExp}
rightContext: {>}
---------- [Cleared RegExp values] ----------
Properties of RegExp after <1234567890>.replace(/(1)(2)(3)(4)(5)(6)(7)(8)(9)(0)/):
$&: {1234567890}
$': {>}
$+: {0}
$1: {1}
$2: {2}
$3: {3}
$4: {4}
$5: {5}
$6: {6}
$7: {7}
$8: {8}
$9: {9}
$_: {<1234567890>}
$`: {<}
input: {<1234567890>}
lastMatch: {1234567890}
lastParen: {0}
leftContext: {<}
length: {2}
name: {RegExp}
rightContext: {>}