OLD | NEW |
(Empty) | |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. |
| 4 |
| 5 import 'util.dart'; |
| 6 import 'package:expect/expect.dart'; |
| 7 |
| 8 void main() { |
| 9 description( |
| 10 'Test for behavior of non-capturing groups, as described in <a href="http:new
RegExp(r"/blog.stevenlevithan.com/archives")npcg-javascript">' + |
| 11 'a blog post by Steven Levithan<new RegExp(r"a> and <a href="http://bugs.webki
t.org/show_bug.cgi?id=14931">bug 14931<")a>.' |
| 12 ); |
| 13 |
| 14 shouldBeTrue(new RegExp(r"(x)?\1y").hasMatch("y")); |
| 15 shouldBe(new RegExp(r"(x)?\1y").firstMatch("y"), ["y", null]); |
| 16 shouldBe(new RegExp(r"(x)?y").firstMatch("y"), ["y", null]); |
| 17 shouldBe(firstMatch("y", new RegExp(r"(x)?\1y")), ["y", null]); |
| 18 shouldBe(firstMatch("y", new RegExp(r"(x)?y")), ["y", null]); |
| 19 shouldBe(firstMatch("y", new RegExp(r"(x)?\1y")), ["y", null]); |
| 20 Expect.listEquals("y".split(new RegExp(r"(x)?\1y")), ["", ""]); |
| 21 Expect.listEquals("y".split(new RegExp(r"(x)?y")), ["", ""]); |
| 22 assertEquals("y".indexOf(new RegExp(r"(x)?\1y")), 0); |
| 23 assertEquals("y".replaceAll(new RegExp(r"(x)?\1y"), "z"), "z"); |
| 24 assertEquals("y".replaceAllMapped(new RegExp(r"(x)?y"), (m) => m.group(1)), "n
ull"); |
| 25 assertEquals("y".replaceAllMapped(new RegExp(r"(x)?\1y"), (m) => m.group(1)),
"null"); |
| 26 assertEquals("y".replaceAllMapped(new RegExp(r"(x)?y"), (m) => m.group(1)), "n
ull"); |
| 27 } |
OLD | NEW |