michael@0: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: michael@0: /** michael@0: Filename: RegExp_dollar_number.js michael@0: Description: 'Tests RegExps $1, ..., $9 properties' michael@0: michael@0: Author: Nick Lerissa michael@0: Date: March 12, 1998 michael@0: */ michael@0: michael@0: var SECTION = 'As described in Netscape doc "What\'s new in JavaScript 1.2"'; michael@0: var VERSION = 'no version'; michael@0: var TITLE = 'RegExp: $1, ..., $9'; michael@0: var BUGNUMBER="123802"; michael@0: michael@0: startTest(); michael@0: writeHeaderToLog('Executing script: RegExp_dollar_number.js'); michael@0: writeHeaderToLog( SECTION + " "+ TITLE); michael@0: michael@0: michael@0: // 'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$1 michael@0: 'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); michael@0: new TestCase ( SECTION, "'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$1", michael@0: 'abcdefghi', RegExp.$1); michael@0: michael@0: // 'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$2 michael@0: new TestCase ( SECTION, "'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$2", michael@0: 'bcdefgh', RegExp.$2); michael@0: michael@0: // 'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$3 michael@0: new TestCase ( SECTION, "'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$3", michael@0: 'cdefg', RegExp.$3); michael@0: michael@0: // 'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$4 michael@0: new TestCase ( SECTION, "'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$4", michael@0: 'def', RegExp.$4); michael@0: michael@0: // 'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$5 michael@0: new TestCase ( SECTION, "'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$5", michael@0: 'e', RegExp.$5); michael@0: michael@0: // 'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$6 michael@0: new TestCase ( SECTION, "'abcdefghi'.match(/(a(b(c(d(e)f)g)h)i)/); RegExp.$6", michael@0: '', RegExp.$6); michael@0: michael@0: var a_to_z = 'abcdefghijklmnopqrstuvwxyz'; michael@0: var regexp1 = /(a)b(c)d(e)f(g)h(i)j(k)l(m)n(o)p(q)r(s)t(u)v(w)x(y)z/ michael@0: // 'abcdefghijklmnopqrstuvwxyz'.match(/(a)b(c)d(e)f(g)h(i)j(k)l(m)n(o)p(q)r(s)t(u)v(w)x(y)z/); RegExp.$1 michael@0: a_to_z.match(regexp1); michael@0: michael@0: new TestCase ( SECTION, "'" + a_to_z + "'.match((a)b(c)....(y)z); RegExp.$1", michael@0: 'a', RegExp.$1); michael@0: new TestCase ( SECTION, "'" + a_to_z + "'.match((a)b(c)....(y)z); RegExp.$2", michael@0: 'c', RegExp.$2); michael@0: new TestCase ( SECTION, "'" + a_to_z + "'.match((a)b(c)....(y)z); RegExp.$3", michael@0: 'e', RegExp.$3); michael@0: new TestCase ( SECTION, "'" + a_to_z + "'.match((a)b(c)....(y)z); RegExp.$4", michael@0: 'g', RegExp.$4); michael@0: new TestCase ( SECTION, "'" + a_to_z + "'.match((a)b(c)....(y)z); RegExp.$5", michael@0: 'i', RegExp.$5); michael@0: new TestCase ( SECTION, "'" + a_to_z + "'.match((a)b(c)....(y)z); RegExp.$6", michael@0: 'k', RegExp.$6); michael@0: new TestCase ( SECTION, "'" + a_to_z + "'.match((a)b(c)....(y)z); RegExp.$7", michael@0: 'm', RegExp.$7); michael@0: new TestCase ( SECTION, "'" + a_to_z + "'.match((a)b(c)....(y)z); RegExp.$8", michael@0: 'o', RegExp.$8); michael@0: new TestCase ( SECTION, "'" + a_to_z + "'.match((a)b(c)....(y)z); RegExp.$9", michael@0: 'q', RegExp.$9); michael@0: /* michael@0: new TestCase ( SECTION, "'" + a_to_z + "'.match((a)b(c)....(y)z); RegExp.$10", michael@0: 's', RegExp.$10); michael@0: */ michael@0: test();