You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows路径校验正则异常:误匹配C:\foo\C:\bar这类含多盘符的非法路径

Windows路径校验正则多盘符匹配问题修复方案

你当前正则错误匹配多盘符路径的根因是盘符/UNC路径前缀被放在了可重复匹配的分组中,允许在路径任意位置匹配盘符,所以才会识别C:\foo\C:\bar这类非法路径。

修改后的完整正则如下,完全兼容你原有校验规则,仅调整了分组结构:

^(?:(?:[a-z]:|\\\\[a-z0-9_.$●-]+\\[a-z0-9_.$●-]+)\\)?(?:\\?[^\\\/:*?"<>|\r\n]+\\?)*(?:[^\\\/:*?"<>|\r\n]+\\)*[^\\\/:*?"<>|\r\n]*$

修改逻辑说明

  • 把原正则开头的盘符/UNC匹配规则从可重复的(?:盘符|相对路径)*分组中抽离,单独作为开头可选匹配项,只允许在整个路径的开头出现0次或1次,彻底禁止路径中间出现盘符前缀
  • 后续路径段完全沿用你原有规则,保留了所有非法字符校验逻辑,不会破坏你之前修复的字符未转义问题

修改后正则可以正确覆盖你原有的所有合法路径校验场景,同时会拦截包含多个盘符、中间出现冒号的非法路径,在PowerShell中使用时依旧保持不区分大小写的匹配规则即可。

内容的提问来源于stack exchange,提问作者fmotion1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 01:45:04