FTP parentFilter排除.jpg文件正则表达式失效及Spring Boot转义问题求助
解决FTP parentFilter()排除.jpg文件的正则方案
- 核心正则表达式(用于匹配非.jpg后缀的文件):
^(?!.*\.jpg$).+$- 逻辑解释:
^定位到文件名开头(?!.*\.jpg$)负向前瞻断言,确保文件名不会以.jpg结尾.+$匹配至少一个任意字符,避免空文件名被匹配
- 逻辑解释:
- Spring Boot环境下的使用细节:
- Java代码中使用时,需转义反斜杠,字符串写为:
"^(?!.*\\.jpg$).+$" - application.properties配置中,直接写:
ftp.filter=^(?!.*\.jpg$).+$ - application.yml配置中,用双引号包裹并转义反斜杠:
ftp: filter: "^(?!.*\\.jpg$).+$"
- Java代码中使用时,需转义反斜杠,字符串写为:
- 验证效果:
- 会被匹配(即允许通过过滤):
report.pdf、avatar.png、readme、data.csv - 会被排除:
sunset.jpg、product.photo.jpg、temp.jpg
- 会被匹配(即允许通过过滤):
内容的提问来源于stack exchange,提问作者myr kotovskiy
相关产品推荐
相关产品推荐

