Browse Source

Caching added for Magic regexes

n1073645 5 years ago
parent
commit
5b5105c864
1 changed files with 4 additions and 5 deletions
  1. 4 5
      src/core/lib/Magic.mjs

+ 4 - 5
src/core/lib/Magic.mjs

@@ -36,10 +36,10 @@ class Magic {
         const matches = [];
 
         for (let i = 0; i < opPatterns.length; i++) {
-            const pattern = opPatterns[i],
-                regex = new RegExp(pattern.match, pattern.flags);
+            const pattern = opPatterns[i];
 
-            if (regex.test(this.inputStr)) {
+
+            if (pattern.match.test(this.inputStr)) {
                 matches.push(pattern);
             }
         }
@@ -522,8 +522,7 @@ class Magic {
                     OperationConfig[op].input.regex.forEach(pattern => {
                         opCriteria.regex.push({
                             op: op,
-                            match: pattern.match,
-                            flags: pattern.flags,
+                            match: new RegExp(pattern.match, pattern.flags),
                             args: pattern.args,
                             useful: pattern.useful || false
                         });