From e4229296c1a6060c64380b14a85bded3d42e1c48 Mon Sep 17 00:00:00 2001 From: ztimson Date: Sat, 12 Oct 2024 12:27:45 -0400 Subject: [PATCH] Added escapeRegex --- package-lock.json | 4 ++-- package.json | 2 +- src/misc.ts | 10 ++++++++++ 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index cdbfef5..5a4ff0b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@ztimson/utils", - "version": "0.18.0", + "version": "0.18.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@ztimson/utils", - "version": "0.18.0", + "version": "0.18.1", "license": "MIT", "dependencies": { "var-persist": "^1.0.1" diff --git a/package.json b/package.json index a363440..c5e045a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@ztimson/utils", - "version": "0.18.0", + "version": "0.18.1", "description": "Utility library", "author": "Zak Timson", "license": "MIT", diff --git a/src/misc.ts b/src/misc.ts index 3284c04..1cceb48 100644 --- a/src/misc.ts +++ b/src/misc.ts @@ -11,3 +11,13 @@ export function gravatar(email: string, def='mp') { if(!email) return ''; return `https://www.gravatar.com/avatar/${md5(email)}?d=${def}`; } + +/** + * Escape any regex special characters to avoid misinterpretation during search + * + * @param {string} value String which should be escaped + * @return {string} New escaped sequence + */ +function escapeRegex(value: string) { + return value.replace(/[.*+?^${}()|\[\]\\]/g, '\\$&'); +}