正则表达式验证版本号


一、代码:

{   pattern: /^[1-9]\d?(\.([1-9]?\d)){2}$/,   message: "版本号格式为:X.Y.Z(1-99.0-99.0-99)",   trigger: "blur" } 二、规则: X.Y.Z(1-99.0-99.0-99)   注1: /^([1-9]\d|[1-9])(\.([1-9]\d|\d)){2}$/    或者    /^[1-9]\d?(\.(0|[1-9]\d?)){2}$/    也可以,但没有这个好: /^[1-9]\d?(\.([1-9]?\d)){2}$/   注2: 语义版本控制规范 2.0 (https://semver.org/)推荐的正则表达式来检查 SemVer 字符串:见:https ://regex101.com/r/vkijKf/1/
^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$