Extended_Pictographic.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. // Copyright 2019 Mathias Bynens. All rights reserved.
  2. // This code is governed by the BSD license found in the LICENSE file.
  3. /*---
  4. author: Mathias Bynens
  5. description: >
  6. Unicode property escapes for `Extended_Pictographic`
  7. info: |
  8. Generated by https://github.com/mathiasbynens/unicode-property-escapes-tests
  9. Unicode v12.1.0
  10. esid: sec-static-semantics-unicodematchproperty-p
  11. features: [regexp-unicode-property-escapes]
  12. includes: [regExpUtils.js]
  13. ---*/
  14. const matchSymbols = buildString({
  15. loneCodePoints: [
  16. 0x0000A9,
  17. 0x0000AE,
  18. 0x00203C,
  19. 0x002049,
  20. 0x002122,
  21. 0x002139,
  22. 0x002328,
  23. 0x002388,
  24. 0x0023CF,
  25. 0x0024C2,
  26. 0x0025B6,
  27. 0x0025C0,
  28. 0x002714,
  29. 0x002716,
  30. 0x00271D,
  31. 0x002721,
  32. 0x002728,
  33. 0x002744,
  34. 0x002747,
  35. 0x00274C,
  36. 0x00274E,
  37. 0x002757,
  38. 0x0027A1,
  39. 0x0027B0,
  40. 0x0027BF,
  41. 0x002B50,
  42. 0x002B55,
  43. 0x003030,
  44. 0x00303D,
  45. 0x003297,
  46. 0x003299,
  47. 0x01F12F,
  48. 0x01F18E,
  49. 0x01F21A,
  50. 0x01F22F
  51. ],
  52. ranges: [
  53. [0x002194, 0x002199],
  54. [0x0021A9, 0x0021AA],
  55. [0x00231A, 0x00231B],
  56. [0x0023E9, 0x0023F3],
  57. [0x0023F8, 0x0023FA],
  58. [0x0025AA, 0x0025AB],
  59. [0x0025FB, 0x0025FE],
  60. [0x002600, 0x002605],
  61. [0x002607, 0x002612],
  62. [0x002614, 0x002685],
  63. [0x002690, 0x002705],
  64. [0x002708, 0x002712],
  65. [0x002733, 0x002734],
  66. [0x002753, 0x002755],
  67. [0x002763, 0x002767],
  68. [0x002795, 0x002797],
  69. [0x002934, 0x002935],
  70. [0x002B05, 0x002B07],
  71. [0x002B1B, 0x002B1C],
  72. [0x01F000, 0x01F0FF],
  73. [0x01F10D, 0x01F10F],
  74. [0x01F16C, 0x01F171],
  75. [0x01F17E, 0x01F17F],
  76. [0x01F191, 0x01F19A],
  77. [0x01F1AD, 0x01F1E5],
  78. [0x01F201, 0x01F20F],
  79. [0x01F232, 0x01F23A],
  80. [0x01F23C, 0x01F23F],
  81. [0x01F249, 0x01F3FA],
  82. [0x01F400, 0x01F53D],
  83. [0x01F546, 0x01F64F],
  84. [0x01F680, 0x01F6FF],
  85. [0x01F774, 0x01F77F],
  86. [0x01F7D5, 0x01F7FF],
  87. [0x01F80C, 0x01F80F],
  88. [0x01F848, 0x01F84F],
  89. [0x01F85A, 0x01F85F],
  90. [0x01F888, 0x01F88F],
  91. [0x01F8AE, 0x01F8FF],
  92. [0x01F90C, 0x01F93A],
  93. [0x01F93C, 0x01F945],
  94. [0x01F947, 0x01FFFD]
  95. ]
  96. });
  97. testPropertyEscapes(
  98. /^\p{Extended_Pictographic}+$/u,
  99. matchSymbols,
  100. "\\p{Extended_Pictographic}"
  101. );
  102. const nonMatchSymbols = buildString({
  103. loneCodePoints: [
  104. 0x0025FF,
  105. 0x002606,
  106. 0x002613,
  107. 0x002713,
  108. 0x002715,
  109. 0x00274D,
  110. 0x002756,
  111. 0x003298,
  112. 0x01F23B,
  113. 0x01F93B,
  114. 0x01F946
  115. ],
  116. ranges: [
  117. [0x00DC00, 0x00DFFF],
  118. [0x000000, 0x0000A8],
  119. [0x0000AA, 0x0000AD],
  120. [0x0000AF, 0x00203B],
  121. [0x00203D, 0x002048],
  122. [0x00204A, 0x002121],
  123. [0x002123, 0x002138],
  124. [0x00213A, 0x002193],
  125. [0x00219A, 0x0021A8],
  126. [0x0021AB, 0x002319],
  127. [0x00231C, 0x002327],
  128. [0x002329, 0x002387],
  129. [0x002389, 0x0023CE],
  130. [0x0023D0, 0x0023E8],
  131. [0x0023F4, 0x0023F7],
  132. [0x0023FB, 0x0024C1],
  133. [0x0024C3, 0x0025A9],
  134. [0x0025AC, 0x0025B5],
  135. [0x0025B7, 0x0025BF],
  136. [0x0025C1, 0x0025FA],
  137. [0x002686, 0x00268F],
  138. [0x002706, 0x002707],
  139. [0x002717, 0x00271C],
  140. [0x00271E, 0x002720],
  141. [0x002722, 0x002727],
  142. [0x002729, 0x002732],
  143. [0x002735, 0x002743],
  144. [0x002745, 0x002746],
  145. [0x002748, 0x00274B],
  146. [0x00274F, 0x002752],
  147. [0x002758, 0x002762],
  148. [0x002768, 0x002794],
  149. [0x002798, 0x0027A0],
  150. [0x0027A2, 0x0027AF],
  151. [0x0027B1, 0x0027BE],
  152. [0x0027C0, 0x002933],
  153. [0x002936, 0x002B04],
  154. [0x002B08, 0x002B1A],
  155. [0x002B1D, 0x002B4F],
  156. [0x002B51, 0x002B54],
  157. [0x002B56, 0x00302F],
  158. [0x003031, 0x00303C],
  159. [0x00303E, 0x003296],
  160. [0x00329A, 0x00DBFF],
  161. [0x00E000, 0x01EFFF],
  162. [0x01F100, 0x01F10C],
  163. [0x01F110, 0x01F12E],
  164. [0x01F130, 0x01F16B],
  165. [0x01F172, 0x01F17D],
  166. [0x01F180, 0x01F18D],
  167. [0x01F18F, 0x01F190],
  168. [0x01F19B, 0x01F1AC],
  169. [0x01F1E6, 0x01F200],
  170. [0x01F210, 0x01F219],
  171. [0x01F21B, 0x01F22E],
  172. [0x01F230, 0x01F231],
  173. [0x01F240, 0x01F248],
  174. [0x01F3FB, 0x01F3FF],
  175. [0x01F53E, 0x01F545],
  176. [0x01F650, 0x01F67F],
  177. [0x01F700, 0x01F773],
  178. [0x01F780, 0x01F7D4],
  179. [0x01F800, 0x01F80B],
  180. [0x01F810, 0x01F847],
  181. [0x01F850, 0x01F859],
  182. [0x01F860, 0x01F887],
  183. [0x01F890, 0x01F8AD],
  184. [0x01F900, 0x01F90B],
  185. [0x01FFFE, 0x10FFFF]
  186. ]
  187. });
  188. testPropertyEscapes(
  189. /^\P{Extended_Pictographic}+$/u,
  190. nonMatchSymbols,
  191. "\\P{Extended_Pictographic}"
  192. );