রেগেক্স লাইব্রেরিতে রেগুলার এক্সপ্রেশন সম্পর্কিত বিভিন্ন পদ্ধতি এবং বৈশিষ্ট্য রয়েছে। এখানে আমরা কিছু regex_errors দেখতে পাব। এগুলি রেজেক্স লাইব্রেরিতেও রয়েছে। কিছু রেগুলার এক্সপ্রেশন এক্সিকিউট করার সময় আমরা কিছু এরর পাই। সেই ত্রুটিগুলি এখানে উল্লেখ করা হয়েছে৷
৷পতাকা | ত্রুটি |
---|---|
error_collate | রেজেক্স-এ, অবৈধ সমন্বিত নাম। |
error_ctype | রেজেক্সে, একটি অবৈধ অক্ষর শ্রেণীর নাম রয়েছে। |
error_stack | রেজেক্স মেলে কি না তা নির্ধারণ করার জন্য যথেষ্ট মেমরি নেই। |
error_space | Finite State Machine এ রূপান্তর করুন, যখন মেমরি অপর্যাপ্ত হয় |
error_badrepeat | স্ট্রিংটির পুনরাবৃত্তি স্পেসিফায়ার (*?+{) আছে যা একটি বৈধ রেগুলার এক্সপ্রেশনের আগে ছিল না। |
error_complexity | একটি রেজেক্সের বিরুদ্ধে চেষ্টা করা ম্যাচের জটিলতা একটি প্রাক-সেট স্তর অতিক্রম করেছে |
error_range | অবৈধ অক্ষর পরিসর রয়েছে। |
error_badbrace | রেজেক্সে অমিল রয়েছে { এবং }। |
error_brace | রেজেক্সে বন্ধনী { এবং } এর মধ্যে অবৈধ পরিসর রয়েছে। |
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