跳转至

Parse semantic version(解析语义版本(Parse semantic version))

Supported in: Batch, Streaming

Parses a semantic version string into a logical type. Supports both release versions (e.g., "0.987.0") and versions with prerelease metadata (e.g., "0.987.0-16-gb3fb285"). Returns null for strings that do not match the expected format.

Expression categories: String

Declared arguments

  • Version string: Semantic version string. Supports both release versions (major.minor.patch) and versions with prerelease metadata (major.minor.patch-prerelease).
    Expression\

Output type: Semantic Version

Examples

Example 1: Base case

Argument values:

  • Version string: version
version Output
0.987.0-16-gb3fb285 {
 major -> 0,
 minor -> 987,
 patch -> 0,
 prerelease -> [ 16-gb3fb285 ],
}
1.0.0-0-g0000000 {
 major -> 1,
 minor -> 0,
 patch -> 0,
 prerelease -> [ 0-g0000000 ],
}
2.5.3-42-gabc1234 {
 major -> 2,
 minor -> 5,
 patch -> 3,
 prerelease -> [ 42-gabc1234 ],
}
0.987.0-SNAPSHOT {
 major -> 0,
 minor -> 987,
 patch -> 0,
 prerelease -> [ SNAPSHOT ],
}

Example 2: Base case

Argument values:

  • Version string: version
version Output
0.987.0 {
 major -> 0,
 minor -> 987,
 patch -> 0,
 prerelease -> [ ],
}
1.0.0 {
 major -> 1,
 minor -> 0,
 patch -> 0,
 prerelease -> [ ],
}
2.5.3 {
 major -> 2,
 minor -> 5,
 patch -> 3,
 prerelease -> [ ],
}

Example 3: Null case

Argument values:

  • Version string: version
version Output
null null

Example 4: Edge case

Argument values:

  • Version string: version
version Output
invalid version string null
not-a-version null
1.0 null


中文翻译


解析语义版本(Parse semantic version)

支持:批处理(Batch)、流处理(Streaming)

将语义版本字符串解析为逻辑类型。既支持发布版本(如 "0.987.0"),也支持包含预发布元数据的版本(如 "0.987.0-16-gb3fb285")。对于不符合预期格式的字符串,返回 null。

表达式类别: 字符串(String)

声明参数

  • 版本字符串(Version string): 语义版本字符串。支持发布版本(主版本号.次版本号.修订号)和包含预发布元数据的版本(主版本号.次版本号.修订号-预发布标识)。
    表达式\

输出类型: 语义版本(Semantic Version)

示例

示例 1:基本情况

参数值:

  • 版本字符串: version
version 输出
0.987.0-16-gb3fb285 {
 major -> 0,
 minor -> 987,
 patch -> 0,
 prerelease -> [ 16-gb3fb285 ],
}
1.0.0-0-g0000000 {
 major -> 1,
 minor -> 0,
 patch -> 0,
 prerelease -> [ 0-g0000000 ],
}
2.5.3-42-gabc1234 {
 major -> 2,
 minor -> 5,
 patch -> 3,
 prerelease -> [ 42-gabc1234 ],
}
0.987.0-SNAPSHOT {
 major -> 0,
 minor -> 987,
 patch -> 0,
 prerelease -> [ SNAPSHOT ],
}

示例 2:基本情况

参数值:

  • 版本字符串: version
version 输出
0.987.0 {
 major -> 0,
 minor -> 987,
 patch -> 0,
 prerelease -> [ ],
}
1.0.0 {
 major -> 1,
 minor -> 0,
 patch -> 0,
 prerelease -> [ ],
}
2.5.3 {
 major -> 2,
 minor -> 5,
 patch -> 3,
 prerelease -> [ ],
}

示例 3:空值情况

参数值:

  • 版本字符串: version
version 输出
null null

示例 4:边界情况

参数值:

  • 版本字符串: version
version 输出
invalid version string null
not-a-version null
1.0 null