如何编写仅匹配n.n.n格式Git标签的正则表达式?
符合需求的正则表达式
完整匹配三段式数字版本号的正则如下:
^[0-9]{1,5}\.[0-9]{1,5}\.[0-9]{1,5}$
规则说明
^匹配标签字符串的起始位置,避免匹配到带前缀的标签[0-9]{1,5}匹配1到5位阿拉伯数字,刚好覆盖0到99999的取值范围\.转义匹配英文句点,避免被识别为正则通配符$匹配标签字符串的结束位置,避免匹配到带后缀、多段的不符合要求的标签
匹配效果验证
- 可匹配的标签示例:
3.18.0、1.2.3、99999.0.99999 - 不会匹配的标签示例:
3.18.0.1-COLL、4.50.1-TEST、100000.1.2(第一段数值超出99999)、1.2(仅两段数字)
Git 场景使用提示
如果用于Git标签筛选,需要开启正则匹配参数,示例命令:git tag -l --perl-regexp '^[0-9]{1,5}\.[0-9]{1,5}\.[0-9]{1,5}$'
内容的提问来源于stack exchange,提问作者sineverba
相关产品推荐
相关产品推荐

