Version reguläre Ausdrücke in CMake

Möchte ich validieren Sie vom Benutzer angegebene version-string, der - um sicherzustellen, dass es besteht aus drei Punkten getrennten zahlen (e.g. 1.20.300).
Ich bin mir aber nicht sicher, wie Sie Sie zu schreiben, wie regex, der code unten ist nur ein Versuch:

if( PROJECT_VERSION MATCHES "([0-9]+).([0-9]+).([0-9+])" )
    message( "NOTE: Valid version string" )
else()
    message( FATAL_ERROR "Invalid version string" )
endif()

So, wie Sie richtig schreiben erforderlich regex?

Danke.

UPD

Mein regex passt auch 1.2.3.4, aber sollte nicht!
Nur drei Punkten getrennten zahlen sind möglich.

  • versuchen "^([0-9]+)[.]([0-9]+)[.]([0-9]+)$"
  • Es passt auch 1.2.3.4 string, zum Beispiel. Aber sollte nicht!
InformationsquelleAutor eraxillan | 2015-11-02
Schreibe einen Kommentar