构建正则表达式提取文本中的文件路径,寻求在线正则工具帮助
提取文件路径的正则表达式方案及工具推荐
嗨,咱们来搞定你的正则需求,顺便给你推荐些实用的在线辅助工具~
适配你需求的正则表达式
从你给出的文本格式来看,每一行都是「文件名 完整文件路径 文件大小/日期等额外信息」的结构,要跳过第一个文件名、提取包含它的完整路径并忽略后续内容,这里有两个适配的正则表达式:
通用匹配版本
这个版本不限制路径开头,适用于任意路径格式:
^\S+\s+(.*?)\s+\S
Windows路径精准匹配版本
因为你的路径都是Windows格式(以C:\开头),这个版本匹配更精准:
^\S+\s+(C:\\.*?)\s+[\d,]
正则逻辑解释
^\S+:匹配行首的非空白字符(也就是第一个文件名),\S代表非空白字符,+表示匹配1个或多个\s+:匹配文件名和路径之间的空白分隔符(C:\\.*?):捕获组,专门提取从C:\开始的完整路径;.*?是「非贪婪匹配」,会在遇到第一个「空白+数字/逗号」时停止,刚好对应路径结束、文件大小开始的位置\s+[\d,]:匹配路径后的空白和数字/逗号,确保我们只捕获到完整路径部分,不会包含后面的额外信息
用你的示例文本测试,会分别提取到:
C:\Program Files (x86)\Microsoft Analysis Services\AS OLEDB\110\Resources\1049C:\Program Files\Microsoft Office\Office16\ADDINS\PowerPivot Excel Add-in\ar
完全符合你的要求~
在线正则辅助工具推荐
这些工具都能帮你实时测试、调试正则表达式,不用跳转陌生网站也能放心用:
- Regex101:支持实时预览匹配结果,有详细的正则语法解释,还能生成多种编程语言的代码片段
- RegExr:可视化的正则编辑器,带语法提示和匹配高亮,新手也能快速上手
- Debuggex:用图形化方式展示正则的匹配逻辑,很适合理解复杂正则的运行原理
你可以把你的文本和正则放进去,调整规则直到完全符合预期。
内容的提问来源于stack exchange,提问作者Yurij
相关产品推荐
相关产品推荐

