LINUX.ORG.RU

Regex, CMake и Debian

 , ,


0

1

Надо распарсить в CMake два регекса:

  1. На простой номер версии типа int.int.int (положить три инта в три переменных CMake)
  2. На номер версии в стиле дебиана: string/int.int.int-int (положить string и три инта в переменные CMake)

С первым я с грехом пополам справился, а со вторым не знаю, что делать. В регекспах дуб дубом, особенно в CMake.

★★

set(myvar "string/1.2.3-4")
string(REGEX MATCH "([^/]+)/([0-9]+)\\.([0-9]+)\\.([0-9]+)-([0-9]+)" _ "${myvar}")
message("string=${CMAKE_MATCH_1} int=${CMAKE_MATCH_2} int=${CMAKE_MATCH_3} int=${CMAKE_MATCH_4} int=${CMAKE_MATCH_5}")
anonymous ()