我正在尝试修改一个已经存在的代码,用于一个用Go编写的简单版本控制检查脚本。该脚本用于检查版本标记更新是否符合预期,并且只允许通过特定格式。到目前为止,它只接受以下格式的版本:
“vX.X.X”
Go代码如下:
模式= ^v[0-9]+.[0-9]+.[0-9]+$
这样,预发布标签就被排除在外了,这对我们来说是个问题。代码应允许:
v1.2.3 v1.2.4
和/或
v1.2.3-测试v1.2.4-beta
版本。我如何添加此?这是正确的模式吗?
模式= ^v[0-9]+.[0-9]+.[0-9]+$
+ ^v[0-9]+.[0-9]+.[0-9]+-[$]
如果可能的话,请告诉我,我真的没有围棋经验。
1条答案
按热度按时间t8e9dugd1#
试试这个
模式=
^v[0-9]+.[0-9]+.[0-9]+(-[a-zA-Z]+)?$
下面是一个示例代码片段,它将打印标签列表中不匹配的标签。
请参阅How to write regular expressions?以了解有关正则表达式的更多信息。