From 6ad95ce2f654b4065a7d1662414fbab1925b4198 Mon Sep 17 00:00:00 2001 From: groenroos Date: Mon, 21 Feb 2022 01:31:26 +0000 Subject: [PATCH] Use matchWildcard for Memory --- drivers/db/Memory.js | 2 +- lib/Utils.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/db/Memory.js b/drivers/db/Memory.js index babf988..d7cba48 100644 --- a/drivers/db/Memory.js +++ b/drivers/db/Memory.js @@ -189,7 +189,7 @@ export default class Memory extends Interface { /* If we have wildcards, build a regex */ if (String(value).includes('*')) { - return String(record[field]).match(new RegExp(`^${value.split('*').join('(.*)')}$`, 'gmi')) !== null; + return new Utils().matchWildcard(record[field], value); } /* Otherwise do a direct match */ diff --git a/lib/Utils.js b/lib/Utils.js index fb8875c..c09a1b2 100644 --- a/lib/Utils.js +++ b/lib/Utils.js @@ -127,7 +127,7 @@ export default class Utils { */ matchWildcard(string, rule) { const escapeRegex = string => string.replace(/([.*+?^=!:${}()|[\]/\\])/g, '\\$1'); - return new RegExp(`^${String(rule).split('*').map(element => escapeRegex(element)).join('.*')}$`).test(String(string)); + return new RegExp(`^${String(rule).split('*').map(element => escapeRegex(element)).join('.*')}$`, 'i').test(String(string)); }