OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Flags: --harmony-regexp-property --harmony-unicode-regexps | 5 // Flags: --harmony-regexp-property --harmony-unicode-regexps |
6 | 6 |
7 function t(re, s) { assertTrue(re.test(s)); } | 7 function t(re, s) { assertTrue(re.test(s)); } |
8 function f(re, s) { assertFalse(re.test(s)); } | 8 function f(re, s) { assertFalse(re.test(s)); } |
9 | 9 |
10 t(/\p{InASCII}+/u, "."); | 10 t(/\p{Block=ASCII}+/u, "."); |
11 t(/\p{InASCII}+/u, "supercalifragilisticexpialidocious"); | 11 t(/\p{Block=ASCII}+/u, "supercalifragilisticexpialidocious"); |
12 t(/\p{InBasic_Latin}+/u, "."); | 12 t(/\p{Block=Basic_Latin}+/u, "."); |
13 t(/\p{InBasic_Latin}+/u, "supercalifragilisticexpialidocious"); | 13 t(/\p{Block=Basic_Latin}+/u, "supercalifragilisticexpialidocious"); |
14 | 14 |
15 t(/\p{InCJK}+/u, "话说天下大势,分久必合,合久必分"); | 15 t(/\p{blk=CJK}+/u, "话说天下大势,分久必合,合久必分"); |
16 t(/\p{InCJK_Unified_Ideographs}+/u, "吾庄后有一桃园,花开正盛"); | 16 t(/\p{blk=CJK_Unified_Ideographs}+/u, "吾庄后有一桃园,花开正盛"); |
17 f(/\p{InCJK}+/u, "おはようございます"); | 17 f(/\p{blk=CJK}+/u, "おはようございます"); |
18 f(/\p{InCJK_Unified_Ideographs}+/u, | 18 f(/\p{blk=CJK_Unified_Ideographs}+/u, |
19 "Something is rotten in the state of Denmark"); | 19 "Something is rotten in the state of Denmark"); |
20 | 20 |
21 t(/\p{InLatin_1}+/u, "Wie froh bin ich, daß ich weg bin!"); | 21 t(/\p{blk=Latin_1}+/u, "Wie froh bin ich, daß ich weg bin!"); |
22 f(/\p{InLatin_1_Supplement}+/u, "奔腾千里荡尘埃,渡水登山紫雾开"); | 22 f(/\p{blk=Latin_1_Supplement}+/u, "奔腾千里荡尘埃,渡水登山紫雾开"); |
23 f(/\p{InLatin_1_Sup}+/u, "いただきます"); | 23 f(/\p{blk=Latin_1_Sup}+/u, "いただきます"); |
24 | 24 |
25 t(/\p{InHiragana}/u, "いただきます"); | 25 t(/\p{blk=Hiragana}/u, "いただきます"); |
26 t(/\p{Hiragana}/u, "\u{1b001}"); // This refers to the script "Hiragana". | 26 t(/\p{sc=Hiragana}/u, "\u{1b001}"); // This refers to the script "Hiragana". |
27 f(/\p{InHiragana}/u, "\u{1b001}"); // This refers to the block "Hiragana". | 27 f(/\p{blk=Hiragana}/u, "\u{1b001}"); // This refers to the block "Hiragana". |
28 | 28 |
29 t(/\p{InGreek_And_Coptic}/u, | 29 t(/\p{blk=Greek_And_Coptic}/u, |
30 "ἄνδρα μοι ἔννεπε, μοῦσα, πολύτροπον, ὃς μάλα πολλὰ"); | 30 "ἄνδρα μοι ἔννεπε, μοῦσα, πολύτροπον, ὃς μάλα πολλὰ"); |
31 t(/\p{InGreek}/u, "μῆνιν ἄειδε θεὰ Πηληϊάδεω Ἀχιλῆος"); | 31 t(/\p{blk=Greek}/u, "μῆνιν ἄειδε θεὰ Πηληϊάδεω Ἀχιλῆος"); |
32 | 32 |
33 assertThrows("/\\p{In}/u"); | 33 assertThrows("/\\p{In}/u"); |
34 assertThrows("/\\pI/u"); | 34 assertThrows("/\\pI/u"); |
35 assertThrows("/\\p{I}/u"); | 35 assertThrows("/\\p{I}/u"); |
36 assertThrows("/\\p{CJK}/u"); | 36 assertThrows("/\\p{CJK}/u"); |
OLD | NEW |