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

