रेगेक्स लाइब्रेरी में नियमित अभिव्यक्तियों से संबंधित विभिन्न विधियां और विशेषताएं हैं। यहां हम कुछ regex_errors देखेंगे। ये रेगेक्स लाइब्रेरी में भी मौजूद हैं। कुछ रेगुलर एक्सप्रेशन निष्पादित करने के दौरान, हमें कुछ त्रुटियाँ मिलती हैं। उन त्रुटियों का उल्लेख यहाँ किया गया है।
झंडे | <वें शैली="पाठ्य-संरेखण:केंद्र;">त्रुटियां|
---|---|
error_collate | रेगेक्स में, अमान्य मिलान वाले नाम। |
error_ctype | रेगेक्स में, एक अमान्य वर्ण वर्ग नाम है। |
error_stack | रेगेक्स को निर्धारित करने के लिए पर्याप्त मेमोरी का मिलान नहीं किया जा सकता है या नहीं। |
error_space | स्मृति अपर्याप्त होने पर परिमित अवस्था मशीन में कनवर्ट करें |
error_badrepeat | स्ट्रिंग में रिपीट स्पेसिफायर ( *?+{) है जो एक वैध रेगुलर एक्सप्रेशन से पहले नहीं था। |
error_complexity | रेगेक्स के विरुद्ध प्रयास किए गए मैच की जटिलता पूर्व-निर्धारित स्तर से अधिक हो गई है |
error_range | अमान्य वर्ण श्रेणी शामिल है। |
त्रुटि_बैडब्रेस | रेगेक्स में बेमेल ब्रेसिज़ { और } हैं। |
त्रुटि_ब्रेस | रेगेक्स में ब्रेसिज़ { और } के बीच अमान्य श्रेणी है। |
error_paren | रेगेक्स में बेमेल कोष्ठक ( और ) हैं। |
error_brack | रेगेक्स में बेमेल कोष्ठक ([ और ]) हैं। |
error_backref | रेगेक्स अमान्य बैक संदर्भ को छोड़कर। |
error_escape | रेगेक्स किसी अमान्य एस्केप्ड कैरेक्टर या अनुगामी एस्केप की अनुमति नहीं देता है। |
उदाहरण
#include <iostream> #include <regex> int main() { try { std::regex re("[A-Z][0"); //an error is present } catch (const std::regex_error& err) { std::cout << "There is an error. The error is: " << err.what() << '\n'; if (err.code() == std::regex_constants::error_brack) { std::cout << "This is the code of error_brack\n"; } } }
आउटपुट
There is an error. The error is: Unexpected character in bracket expression. This is the code of error_brack