1 |
|
2 | /**
|
3 | * Object of regular expressions for SWU strings in UTF-16
|
4 | *
|
5 | * { symbol, coord, sort, box, prefix, spatial, signbox, sign, sortable }
|
6 | * @alias swu.re
|
7 | * @type {object}
|
8 | */
|
9 | let re = {
|
10 | 'symbol': '(?:(?:\uD8C0[\uDC01-\uDFFF])|(?:[\uD8C1-\uD8FC][\uDC00-\uDFFF])|(?:\uD8FD[\uDC00-\uDC80]))',
|
11 | 'coord': '(?:\uD836[\uDC0C-\uDDFF]){2}',
|
12 | 'sort': '\uD836\uDC00',
|
13 | 'box': '\uD836[\uDC01-\uDC04]'
|
14 | }
|
15 | re.prefix = `(?:${re.sort}(?:${re.symbol})+)`;
|
16 | re.spatial = `${re.symbol}${re.coord}`;
|
17 | re.signbox = `${re.box}${re.coord}(?:${re.spatial})*`;
|
18 | re.sign = `${re.prefix}?${re.signbox}`;
|
19 | re.sortable = `${re.prefix}${re.signbox}`;
|
20 |
|
21 | export { re }
|