| // Copyright 2019 Mathias Bynens. All rights reserved. |
| // This code is governed by the BSD license found in the LICENSE file. |
| |
| /*--- |
| author: Mathias Bynens |
| description: > |
| Unicode property escapes for `General_Category=Open_Punctuation` |
| info: | |
| Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests |
| Unicode v12.1.0 |
| esid: sec-static-semantics-unicodematchproperty-p |
| features: [regexp-unicode-property-escapes] |
| includes: [regExpUtils.js] |
| ---*/ |
| |
| const matchSymbols = buildString({ |
| loneCodePoints: [ |
| 0x000028, |
| 0x00005B, |
| 0x00007B, |
| 0x000F3A, |
| 0x000F3C, |
| 0x00169B, |
| 0x00201A, |
| 0x00201E, |
| 0x002045, |
| 0x00207D, |
| 0x00208D, |
| 0x002308, |
| 0x00230A, |
| 0x002329, |
| 0x002768, |
| 0x00276A, |
| 0x00276C, |
| 0x00276E, |
| 0x002770, |
| 0x002772, |
| 0x002774, |
| 0x0027C5, |
| 0x0027E6, |
| 0x0027E8, |
| 0x0027EA, |
| 0x0027EC, |
| 0x0027EE, |
| 0x002983, |
| 0x002985, |
| 0x002987, |
| 0x002989, |
| 0x00298B, |
| 0x00298D, |
| 0x00298F, |
| 0x002991, |
| 0x002993, |
| 0x002995, |
| 0x002997, |
| 0x0029D8, |
| 0x0029DA, |
| 0x0029FC, |
| 0x002E22, |
| 0x002E24, |
| 0x002E26, |
| 0x002E28, |
| 0x002E42, |
| 0x003008, |
| 0x00300A, |
| 0x00300C, |
| 0x00300E, |
| 0x003010, |
| 0x003014, |
| 0x003016, |
| 0x003018, |
| 0x00301A, |
| 0x00301D, |
| 0x00FD3F, |
| 0x00FE17, |
| 0x00FE35, |
| 0x00FE37, |
| 0x00FE39, |
| 0x00FE3B, |
| 0x00FE3D, |
| 0x00FE3F, |
| 0x00FE41, |
| 0x00FE43, |
| 0x00FE47, |
| 0x00FE59, |
| 0x00FE5B, |
| 0x00FE5D, |
| 0x00FF08, |
| 0x00FF3B, |
| 0x00FF5B, |
| 0x00FF5F, |
| 0x00FF62 |
| ], |
| ranges: [] |
| }); |
| testPropertyEscapes( |
| /^\p{General_Category=Open_Punctuation}+$/u, |
| matchSymbols, |
| "\\p{General_Category=Open_Punctuation}" |
| ); |
| testPropertyEscapes( |
| /^\p{General_Category=Ps}+$/u, |
| matchSymbols, |
| "\\p{General_Category=Ps}" |
| ); |
| testPropertyEscapes( |
| /^\p{gc=Open_Punctuation}+$/u, |
| matchSymbols, |
| "\\p{gc=Open_Punctuation}" |
| ); |
| testPropertyEscapes( |
| /^\p{gc=Ps}+$/u, |
| matchSymbols, |
| "\\p{gc=Ps}" |
| ); |
| testPropertyEscapes( |
| /^\p{Open_Punctuation}+$/u, |
| matchSymbols, |
| "\\p{Open_Punctuation}" |
| ); |
| testPropertyEscapes( |
| /^\p{Ps}+$/u, |
| matchSymbols, |
| "\\p{Ps}" |
| ); |
| |
| const nonMatchSymbols = buildString({ |
| loneCodePoints: [ |
| 0x000F3B, |
| 0x002309, |
| 0x002769, |
| 0x00276B, |
| 0x00276D, |
| 0x00276F, |
| 0x002771, |
| 0x002773, |
| 0x0027E7, |
| 0x0027E9, |
| 0x0027EB, |
| 0x0027ED, |
| 0x002984, |
| 0x002986, |
| 0x002988, |
| 0x00298A, |
| 0x00298C, |
| 0x00298E, |
| 0x002990, |
| 0x002992, |
| 0x002994, |
| 0x002996, |
| 0x0029D9, |
| 0x002E23, |
| 0x002E25, |
| 0x002E27, |
| 0x003009, |
| 0x00300B, |
| 0x00300D, |
| 0x00300F, |
| 0x003015, |
| 0x003017, |
| 0x003019, |
| 0x00FE36, |
| 0x00FE38, |
| 0x00FE3A, |
| 0x00FE3C, |
| 0x00FE3E, |
| 0x00FE40, |
| 0x00FE42, |
| 0x00FE5A, |
| 0x00FE5C |
| ], |
| ranges: [ |
| [0x00DC00, 0x00DFFF], |
| [0x000000, 0x000027], |
| [0x000029, 0x00005A], |
| [0x00005C, 0x00007A], |
| [0x00007C, 0x000F39], |
| [0x000F3D, 0x00169A], |
| [0x00169C, 0x002019], |
| [0x00201B, 0x00201D], |
| [0x00201F, 0x002044], |
| [0x002046, 0x00207C], |
| [0x00207E, 0x00208C], |
| [0x00208E, 0x002307], |
| [0x00230B, 0x002328], |
| [0x00232A, 0x002767], |
| [0x002775, 0x0027C4], |
| [0x0027C6, 0x0027E5], |
| [0x0027EF, 0x002982], |
| [0x002998, 0x0029D7], |
| [0x0029DB, 0x0029FB], |
| [0x0029FD, 0x002E21], |
| [0x002E29, 0x002E41], |
| [0x002E43, 0x003007], |
| [0x003011, 0x003013], |
| [0x00301B, 0x00301C], |
| [0x00301E, 0x00DBFF], |
| [0x00E000, 0x00FD3E], |
| [0x00FD40, 0x00FE16], |
| [0x00FE18, 0x00FE34], |
| [0x00FE44, 0x00FE46], |
| [0x00FE48, 0x00FE58], |
| [0x00FE5E, 0x00FF07], |
| [0x00FF09, 0x00FF3A], |
| [0x00FF3C, 0x00FF5A], |
| [0x00FF5C, 0x00FF5E], |
| [0x00FF60, 0x00FF61], |
| [0x00FF63, 0x10FFFF] |
| ] |
| }); |
| testPropertyEscapes( |
| /^\P{General_Category=Open_Punctuation}+$/u, |
| nonMatchSymbols, |
| "\\P{General_Category=Open_Punctuation}" |
| ); |
| testPropertyEscapes( |
| /^\P{General_Category=Ps}+$/u, |
| nonMatchSymbols, |
| "\\P{General_Category=Ps}" |
| ); |
| testPropertyEscapes( |
| /^\P{gc=Open_Punctuation}+$/u, |
| nonMatchSymbols, |
| "\\P{gc=Open_Punctuation}" |
| ); |
| testPropertyEscapes( |
| /^\P{gc=Ps}+$/u, |
| nonMatchSymbols, |
| "\\P{gc=Ps}" |
| ); |
| testPropertyEscapes( |
| /^\P{Open_Punctuation}+$/u, |
| nonMatchSymbols, |
| "\\P{Open_Punctuation}" |
| ); |
| testPropertyEscapes( |
| /^\P{Ps}+$/u, |
| nonMatchSymbols, |
| "\\P{Ps}" |
| ); |