This page tests handling of characters which, according to ECMA 262, are not regular expression PatternCharacters. Those characters are: ^ $ \ . * + ? ( ) [ ] { } | On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". Testing regexp: /^/g PASS regexp.test('') is true PASS regexp.lastIndex is 0 Testing regexp: /\n^/gm PASS regexp.test('\n\n') is true PASS regexp.lastIndex is 1 Testing regexp: /$/g PASS regexp.test('') is true PASS regexp.lastIndex is 0 Testing regexp: /\n$/gm PASS regexp.test('\n\n') is true PASS regexp.lastIndex is 1 Testing regexp: /\z/ PASS regexp.test('z') is true Testing regexp: /a\z/ PASS regexp.test('az') is true Testing regexp: /\_/ PASS regexp.test('_') is true Testing regexp: /a\_/ PASS regexp.test('a_') is true Testing regexp: [invalid \ variations] PASS /\/ threw exception SyntaxError: Unterminated regular expression literal '/\/'. PASS /a\/ threw exception SyntaxError: Unterminated regular expression literal '/a\/'. Testing regexp: /./ PASS regexp.test('a') is true PASS regexp.test('\n') is false Testing regexp: /a./ PASS regexp.test('aa') is true PASS regexp.test('a\n') is false Testing regexp: /a*/gm PASS regexp.test('b') is true PASS regexp.lastIndex is 0 PASS regexp.test('aaba') is true PASS regexp.lastIndex is 2 Testing regexp: [invalid * variations] PASS /*/ threw exception SyntaxError: Multiline comment was not closed properly. PASS /^*/ threw exception SyntaxError: Invalid regular expression: nothing to repeat. Testing regexp: /a+/gm PASS regexp.test('b') is false PASS regexp.test('aaba') is true PASS regexp.lastIndex is 2 Testing regexp: [invalid + variations] PASS /+/ threw exception SyntaxError: Invalid regular expression: nothing to repeat. Testing regexp: /a?/gm PASS regexp.test('b') is true PASS regexp.lastIndex is 0 PASS regexp.test('aaba') is true PASS regexp.lastIndex is 1 Testing regexp: [invalid ? variations] PASS /?/ threw exception SyntaxError: Invalid regular expression: nothing to repeat. Testing regexp: [invalid ( variations] PASS /(/ threw exception SyntaxError: Invalid regular expression: missing ). PASS /a(/ threw exception SyntaxError: Invalid regular expression: missing ). Testing regexp: [invalid ) variations] PASS /)/ threw exception SyntaxError: Invalid regular expression: unmatched parentheses. PASS /a)/ threw exception SyntaxError: Invalid regular expression: unmatched parentheses. Testing regexp: [invalid [ variations] PASS /[/ threw exception SyntaxError: Unterminated regular expression literal '/[/'. PASS /a[/ threw exception SyntaxError: Unterminated regular expression literal '/a[/'. PASS /[b-a]/ threw exception SyntaxError: Invalid regular expression: range out of order in character class. PASS /a[b-a]/ threw exception SyntaxError: Invalid regular expression: range out of order in character class. Testing regexp: /]/gm PASS regexp.test(']') is true PASS regexp.lastIndex is 1 Testing regexp: /a]/gm PASS regexp.test('a]') is true PASS regexp.lastIndex is 2 Testing regexp: /{/gm PASS regexp.test('{') is true PASS regexp.lastIndex is 1 Testing regexp: /a{/gm PASS regexp.test('a{') is true PASS regexp.lastIndex is 2 Testing regexp: /{a/gm PASS regexp.test('{a') is true PASS regexp.lastIndex is 2 Testing regexp: /a{a/gm PASS regexp.test('a{a') is true PASS regexp.lastIndex is 3 Testing regexp: /{1,/gm PASS regexp.test('{1,') is true PASS regexp.lastIndex is 3 Testing regexp: /a{1,/gm PASS regexp.test('a{1,') is true PASS regexp.lastIndex is 4 Testing regexp: /{1,a/gm PASS regexp.test('{1,a') is true PASS regexp.lastIndex is 4 Testing regexp: /{1,0/gm PASS regexp.test('{1,0') is true PASS regexp.lastIndex is 4 Testing regexp: /{1, 0}/gm PASS regexp.test('{1, 0}') is true PASS regexp.lastIndex is 6 Testing regexp: /a{1, 0}/gm PASS regexp.test('a{1, 0}') is true PASS regexp.lastIndex is 7 Testing regexp: /a{1,0/gm PASS regexp.test('a{1,0') is true PASS regexp.lastIndex is 5 Testing regexp: /a{0}/gm PASS regexp.test('a') is true PASS regexp.lastIndex is 0 PASS regexp.test('b') is true PASS regexp.lastIndex is 0 Testing regexp: [invalid {} variations] PASS /{0}/ threw exception SyntaxError: Invalid regular expression: nothing to repeat. PASS /{1,0}/ threw exception SyntaxError: Invalid regular expression: numbers out of order in {} quantifier. PASS /a{1,0}/ threw exception SyntaxError: Invalid regular expression: numbers out of order in {} quantifier. Testing regexp: /}/gm PASS regexp.test('}') is true PASS regexp.lastIndex is 1 Testing regexp: /a}/gm PASS regexp.test('a}') is true PASS regexp.lastIndex is 2 Testing regexp: /(?:)/gm PASS regexp.test('') is true PASS regexp.lastIndex is 0 Testing regexp: /|/gm PASS regexp.test('|') is true PASS regexp.lastIndex is 0 Testing regexp: /a|/gm PASS regexp.test('|') is true PASS regexp.lastIndex is 0 PASS successfullyParsed is true TEST COMPLETE