From 1002b36c0a698c794320d1544c464c13b303e53c Mon Sep 17 00:00:00 2001 From: RuoYi Date: Thu, 16 Apr 2026 13:44:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=99=BD=E5=90=8D=E5=8D=95?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=AF=B9=E9=80=9A=E9=85=8D=E7=AC=A6=E8=B7=AF?= =?UTF-8?q?=E5=BE=84=E5=8C=B9=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ruoyi-ui/src/utils/validate.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ruoyi-ui/src/utils/validate.js b/ruoyi-ui/src/utils/validate.js index 13b7a15c5..fddf7acd3 100644 --- a/ruoyi-ui/src/utils/validate.js +++ b/ruoyi-ui/src/utils/validate.js @@ -5,7 +5,12 @@ * @returns {Boolean} */ export function isPathMatch(pattern, path) { - const regexPattern = pattern.replace(/\//g, '\\/').replace(/\*\*/g, '.*').replace(/\*/g, '[^\\/]*') + const regexPattern = pattern + .replace(/([.+^${}()|\[\]\\])/g, '\\$1') + .replace(/\*\*/g, '__DOUBLE_STAR__') + .replace(/\*/g, '[^/]*') + .replace(/__DOUBLE_STAR__/g, '.*') + .replace(/\?/g, '[^/]') const regex = new RegExp(`^${regexPattern}$`) return regex.test(path) }