首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >CMake中的版本正则表达式

CMake中的版本正则表达式
EN

Stack Overflow用户
提问于 2015-11-02 04:05:49
回答 1查看 12.3K关注 0票数 4

我想验证用户指定的版本字符串,以确保它由三个周期分隔的数字(e.g. 1.20.300)组成。

但我不知道如何编写这样的regex,下面的代码只是一次尝试:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if( PROJECT_VERSION MATCHES "([0-9]+).([0-9]+).([0-9+])" )
    message( "NOTE: Valid version string" )
else()
    message( FATAL_ERROR "Invalid version string" )
endif()

那么,如何正确地编写所需的正则表达式呢?

谢谢。

UPD

我的正则表达式也与1.2.3.4匹配,但是不应该的!

只有三个周期分隔的数字是可能的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-02 04:07:58

圆点在正则表达式中很特殊,所以你应该避开它们:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
"^([0-9]+)\\.([0-9]+)\\.([0-9]+)$"

为什么是双反斜杠?见此处:https://stackoverflow.com/a/4490920/4323

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33477207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文