1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
(Prism.languages['excel-formula'] = {
comment: {
pattern: /(\bN\(\s*)"(?:[^"]|"")*"(?=\s*\))/i,
lookbehind: !0,
greedy: !0,
},
string: { pattern: /"(?:[^"]|"")*"(?!")/, greedy: !0 },
reference: {
pattern:
/(?:'[^']*'|(?:[^\s()[\]{}<>*?"';,$&]*\[[^^\s()[\]{}<>*?"']+\])?\w+)!/,
greedy: !0,
alias: 'string',
inside: {
operator: /!$/,
punctuation: /'/,
sheet: { pattern: /[^[\]]+$/, alias: 'function' },
file: { pattern: /\[[^[\]]+\]$/, inside: { punctuation: /[[\]]/ } },
path: /[\s\S]+/,
},
},
'function-name': { pattern: /\b[A-Z]\w*(?=\()/i, alias: 'builtin' },
range: {
pattern:
/\$?\b(?:[A-Z]+\$?\d+:\$?[A-Z]+\$?\d+|[A-Z]+:\$?[A-Z]+|\d+:\$?\d+)\b/i,
alias: 'selector',
inside: {
operator: /:/,
cell: /\$?[A-Z]+\$?\d+/i,
column: /\$?[A-Z]+/i,
row: /\$?\d+/,
},
},
cell: {
pattern: /\b[A-Z]+\d+\b|\$[A-Za-z]+\$?\d+\b|\b[A-Za-z]+\$\d+\b/,
alias: 'selector',
},
number: /(?:\b\d+(?:\.\d+)?|\B\.\d+)(?:e[+-]?\d+)?\b/i,
boolean: /\b(?:FALSE|TRUE)\b/i,
operator: /[-+*/^%=&,]|<[=>]?|>=?/,
punctuation: /[[\]();{}|]/,
}),
(Prism.languages.xlsx = Prism.languages.xls =
Prism.languages['excel-formula']);
|