语义化版本 regex 模式

复制并测试适用于语义化版本的 JavaScript regex,包含示例和到 Regex tester 的快速链接。

语义化版本 regex 模式

验证整个值

使用锚点检查完整值是否匹配。

Regex: ^v?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$

标志: -

在文本中搜索

在较大的文本块中查找匹配片段。

Regex: \bv?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?\b

标志: g

匹配的示例

  • 1.2.3
  • v2.0.0-beta.1

不匹配的示例

  • 1.2
  • 01.2.3