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

寻求匹配有效Windows相对路径的简易正则表达式(PowerShell适用)

寻找匹配有效Windows相对路径的正则表达式

当前使用的正则^\.\.?\\\w+无法覆盖所有有效Windows相对路径格式,需要一个能匹配所有情况的简易正则,用于PowerShell的ValidateScript块。

需要匹配的基础路径示例

..\meeting_minutes.txt
..\..\profile.txt
Reports\2023\summary.txt
.\Reports\2023\summary.txt
..\Projects\project_a.docx
.\my_file.txt
..\..\data

补充需求:支持含有效特殊字符的路径

还需要匹配包含合法特殊字符的路径,示例如下:

..\Music#a\file.mp3
..\Music[Genre]\file.mp3
..\Music(Genre)\file.mp3
..\Music-Hardcore-Metal\file.mp3
..\Documents\My+File.xlsx
..\Documents\Some{Document}.py
..\Files\Afilewithweird;Characters'`.doc
..\Music#^@!()-+{};',.`~a\file.mp3

推荐正则表达式

以下正则可覆盖上述所有场景:

^(?:\.\.?|[\w#^@!()+{}-,.`~]+)(?:\\(?:\.\.?|[\w#^@!()+{}-,.`~]+))*$

正则说明

  • ^:匹配字符串起始位置
  • (?:\.\.?|[\w#^@!()+{}-,.~]+)`:匹配路径起始段,支持`.`/`..`或者包含允许特殊字符的目录/文件名
  • (?:\\(?:\.\.?|[\w#^@!()+{}-,.~]+))*:匹配后续路径段,每个段以`开头,后跟./..或合法的目录/文件名,*表示可包含0个或多个此类路径段
  • $:匹配字符串结束位置

注意

该正则自动排除了Windows路径中禁止的字符(如:、*、?、"、<、>、|),确保匹配结果均为合法路径。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 21:17:37