summaryrefslogtreecommitdiffstats
path: root/public/prism/prism-regex.min.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/prism/prism-regex.min.js')
-rw-r--r--public/prism/prism-regex.min.js55
1 files changed, 55 insertions, 0 deletions
diff --git a/public/prism/prism-regex.min.js b/public/prism/prism-regex.min.js
new file mode 100644
index 0000000..194cb09
--- /dev/null
+++ b/public/prism/prism-regex.min.js
@@ -0,0 +1,55 @@
+!(function (a) {
+ var e = { pattern: /\\[\\(){}[\]^$+*?|.]/, alias: 'escape' },
+ n =
+ /\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/,
+ t = '(?:[^\\\\-]|' + n.source + ')',
+ s = RegExp(t + '-' + t),
+ i = { pattern: /(<|')[^<>']+(?=[>']$)/, lookbehind: !0, alias: 'variable' };
+ a.languages.regex = {
+ 'char-class': {
+ pattern: /((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,
+ lookbehind: !0,
+ inside: {
+ 'char-class-negation': {
+ pattern: /(^\[)\^/,
+ lookbehind: !0,
+ alias: 'operator',
+ },
+ 'char-class-punctuation': { pattern: /^\[|\]$/, alias: 'punctuation' },
+ range: {
+ pattern: s,
+ inside: {
+ escape: n,
+ 'range-punctuation': { pattern: /-/, alias: 'operator' },
+ },
+ },
+ 'special-escape': e,
+ 'char-set': { pattern: /\\[wsd]|\\p\{[^{}]+\}/i, alias: 'class-name' },
+ escape: n,
+ },
+ },
+ 'special-escape': e,
+ 'char-set': { pattern: /\.|\\[wsd]|\\p\{[^{}]+\}/i, alias: 'class-name' },
+ backreference: [
+ { pattern: /\\(?![123][0-7]{2})[1-9]/, alias: 'keyword' },
+ {
+ pattern: /\\k<[^<>']+>/,
+ alias: 'keyword',
+ inside: { 'group-name': i },
+ },
+ ],
+ anchor: { pattern: /[$^]|\\[ABbGZz]/, alias: 'function' },
+ escape: n,
+ group: [
+ {
+ pattern:
+ /\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/,
+ alias: 'punctuation',
+ inside: { 'group-name': i },
+ },
+ { pattern: /\)/, alias: 'punctuation' },
+ ],
+ quantifier: { pattern: /(?:[+*?]|\{\d+(?:,\d*)?\})[?+]?/, alias: 'number' },
+ alternation: { pattern: /\|/, alias: 'keyword' },
+ };
+})(Prism);