From 7bdaed7e54f9e0e6a23cf7a00d18f5e4126ad3e4 Mon Sep 17 00:00:00 2001 From: retrozinndev Date: Mon, 9 Jun 2025 20:25:57 -0300 Subject: [PATCH] :zap: perf(runner): better regex match search started using flags instead of any-character expressions between characters --- ags/runner/Runner.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/ags/runner/Runner.ts b/ags/runner/Runner.ts index 756b258..f06fdd4 100644 --- a/ags/runner/Runner.ts +++ b/ags/runner/Runner.ts @@ -39,11 +39,17 @@ const plugins = new Set(); export function close() { instance?.close(); } -export function regExMatch(search: string, item: string): boolean { +export function regExMatch(search: string, item: (string|number)): boolean { search = search.replace(/[\\^$.*?()[\]{}|]/g, "\\$&"); + + if(typeof item === "number") + return new RegExp(`${search.split('').map(c => + `.*${c}.*`).join('')}`, + "g").test(item.toString()); + return new RegExp(`${search.split('').map(c => - `.*(${c.toLowerCase()}|${c.toUpperCase()}).*`).join('')}` - ).test(item); + `.*${c}.*`).join('')}`, + "gi").test(item); }