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

求助:为OpenJDK8U-jre_x64_windows_hotspot_8u292b10.msi编写正则表达式

OpenJDK安装包文件名正则匹配修复

先给你指出之前两个正则的问题:

  • 第一个正则(^openjdk8U-jre_x64_windows_hotspot_.*\.msi$):开头的openjdk是小写,而目标文件名是OpenJDK首字母大写,导致开头匹配失败;多余的捕获组括号可以去掉。
  • 第二个正则(openjdk8u-[ a*zA*Z0*9\\.]+msi):字符集里的*是语法错误,不该出现在字符集内;错误用-分隔openjdk8u和jre,目标文件名里是下划线_;还包含了不必要的空格,结尾没匹配.msi的点。

针对OpenJDK8U-jre_x64_windows_hotspot_8u292b10.msi这个文件名,给你几个可用的正则方案:

精准匹配版本格式

如果要严格匹配这类版本号(u数字b数字)的文件:

^OpenJDK8U-jre_x64_windows_hotspot_\d+u\d+b\d+\.msi$
  • ^和$锁定首尾,避免匹配文件名的一部分
  • \d+匹配任意长度的数字,对应版本里的数字部分
  • \.msi准确匹配后缀

如果需要兼容大小写(比如文件名可能是小写开头),可以用不区分大小写模式,或者写成:

^[Oo][Pp][Ee][Nn][Jj][Dd][Kk]8[Uu]-jre_x64_windows_hotspot_\d+u\d+b\d+\.msi$

宽松匹配同前缀文件

如果只要匹配以OpenJDK8U-jre_x64_windows_hotspot_开头、.msi结尾的文件,不管版本号格式:

^OpenJDK8U-jre_x64_windows_hotspot_.*\.msi$

要是怕大小写问题,直接加忽略大小写标记:

(?i)^openjdk8u-jre_x64_windows_hotspot_.*\.msi$

通用简化匹配

如果要覆盖所有OpenJDK 8的Windows x64 JRE安装包,用这个更简洁:

(?i)^openjdk8u-jre_x64_windows_hotspot_.+\.msi$

这里用+替代*,确保版本号部分至少有内容,避免匹配空版本的异常文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 06:03:18