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

Python正则表达式提取Jira组件特定格式值的技术问询

提取Jira组件中特定格式版本号的正则方案

嘿,我来帮你搞定这个Jira组件的正则提取需求!针对你要的「小数点前后各一个字符/数字」的格式,同时排除附着其他字符的情况(比如9.4U1里的9.4、R、(U1)这类),我整理了几个实用的正则方案:

核心正则表达式

最通用的版本,能精准匹配独立的目标格式:

\b([a-zA-Z0-9]\.[a-zA-Z0-9])\b

正则拆解

  • \b:单词边界,确保匹配的目标前后都是非单词字符(比如空格、标点、字符串开头/结尾),完美避开像9.4U1这种后面跟着其他字符的伪匹配
  • [a-zA-Z0-9]:匹配单个字母或数字,覆盖你需要的1.1、1.a、a.a、1.x所有合法格式
  • \.:转义的小数点,匹配实际的点字符(直接写.会匹配任意字符,必须转义)
  • ():捕获组,方便直接提取你需要的目标值

更严格的版本(可选)

如果你的文本里有类似x.y-这种带后缀的情况,想要彻底排除,可以用这个要求匹配项前后必须是空白或字符串首尾的版本:

(?<!\S)([a-zA-Z0-9]\.[a-zA-Z0-9])(?!\S)

测试示例

拿你提供的示例文本测试:

PCN 9.4U1 (Act)----------------------------1.4 PCN 9.5 (Act)-------------

  • 匹配结果:1.4、9.5(9.4U1里的9.4因为后面跟着U1,会被\b排除,不会被匹配)
  • 如果文本里没有符合格式的内容,正则会返回空,完全符合你的需求

使用提示

在Jira里使用时,直接把这个正则填入对应的提取规则中,记得开启捕获组提取(大部分场景下Jira会自动识别捕获组的内容)。如果遇到引擎兼容问题,也可以用这个等价的写法:

(?:^|\s)([a-zA-Z0-9]\.[a-zA-Z0-9])(?:\s|$)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 07:54:57