सेमेक में, मैं कैसे जांच सकता हूं कि स्ट्रिंग टोकन किसी अन्य स्ट्रिंग में शामिल है या नहीं?सेमेक स्ट्रिंग टोकन समावेशन चेक
मेरे मामले में, मैं जानना चाहता हूं कि कंपाइलर का नाम स्ट्रिंग "क्लैंग" (उदा। "क्लैंग", "ऐप्पलक्लांग", ...) है। मैं अब तक इतना कर सकता हूं:
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
...
elseif("${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang")
...
मुझे एक अधिक लचीला दृष्टिकोण चाहिए, जैसे एक सबस्ट्रिंग की उपस्थिति की जांच करना। यदि दिए गए स्ट्रिंग या वेरिएबल का मान दिया नियमित अभिव्यक्ति से मेल खाता (regex से मेल खाता)
यह सच है:
यह है कि मैं क्या दस्तावेज में मिल सकता है है।
यदि (कम) सही है यदि दिया गया स्ट्रिंग या चर का मान मान्य संख्या है और दाईं ओर से कम है।
यदि (ग्रेटर) सही है यदि दिया गया स्ट्रिंग या चर का मान मान्य संख्या है और दाईं ओर से अधिक है।
यदि (इक्वाल) सही है तो दिया गया स्ट्रिंग या चर का मान मान्य संख्या है और दाईं ओर उसके बराबर है।
यदि (STRLESS) सही है यदि दिया गया स्ट्रिंग या चर का मान दाईं ओर स्ट्रिंग या चर से लेक्सिकोोग्राफ़िक रूप से कम है।
यदि (STRGREATER) सही है यदि दिया गया स्ट्रिंग या चर का मान स्ट्रिंग या चर के दायरे से अधिक है।
यदि (STREQUAL) सही है यदि दिया गया स्ट्रिंग या चर का मान लेक्सिकोग्राफिक रूप से दाईं ओर स्ट्रिंग या चर के बराबर है।
दृष्टिकोण से एक आप सूचीबद्ध अंतिम जवाब होने वाला है, लेकिन उस टोकन के स्पष्ट उदाहरण के बिना जिसे आप ढूंढ रहे हैं और जिस स्ट्रिंग को आप खोज रहे हैं, कोई भी आपको और अधिक बारीकी से निर्देशित करने में सक्षम नहीं होगा। – kdopen