cmake'de, bir dize belirtecinin başka bir dizeye dahil olup olmadığını nasıl kontrol edebilirim?cmake dize belirteci eklenmesi denetimi
Durumumda, derleyicinin adının "Clang" dizesini içerip içermediğini (ör. "Clang", "AppleClang", ...) bilmek isterim. Şimdiye kadar yapabileceği tek şey: Bir alt dize olup olmadığını kontrol gibi daha esnek bir yaklaşım istiyoruz
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
...
elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang")
...
.
(regex MATCHES) doğru değerini alır verilen dize veya değişkenin değeri verilen normal ifadeyi eşleşirse:
Bu benim belgelerinde bulabildiğim budur.
(LESS) Belirtilen dize veya değişkenin değeri geçerli bir sayıysa ve sağdaki değerden daha azsa doğrudur.
(GREATER) Belirtilen dizge veya değişkenin değeri geçerli bir sayıysa ve sağdaki değerden daha büyükse True.
(EQUAL) Belirtilen dize veya değişkenin değeri geçerli bir sayıysa ve sağdaki sayıya eşitse True.
(STRLESS) Belirtilen dizge veya değişkenin değeri, sağdaki dize veya değişkenden sözlükbilimsel olarak küçükse doğrudur.
(STRGREATER) Belirtilen dize veya değişkenin değeri, sağdaki dize veya değişkenden sözcükbilimsel olarak daha büyükse doğrudur.
(STREQUAL) Belirtilen dize veya değişkenin değeri, sağdaki dize veya değişkene eşittir. Muhtemelen aradığınız şey olacaktır.
biri listelenen son cevap olacak, ama aradığınız simge ve aradığınız dizgenin açık bir örneği olmadan, kimse sizi daha yakından yönlendiremeyecektir. – kdopen