C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++でのregex_error


正規表現ライブラリには、正規表現に関連するさまざまなメソッドと機能があります。ここにいくつかのregex_errorsが表示されます。これらは正規表現ライブラリにもあります。いくつかの正規表現を実行しているときに、いくつかのエラーが発生します。そのエラーはここに記載されています。

フラグ エラー
error_collat​​e 正規表現で、名前の照合が無効になっています。
error_ctype 正規表現に無効な文字クラス名があります。
error_stack 正規表現を一致させることができるかどうかを判断するのに十分なメモリがありません。
error_space メモリが不足している場合は、有限ステートマシンに変換します
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

  1. Linux上のc++のトップIDEは何ですか?

    大きなプロジェクトは、単なるテキストエディタでは管理が困難です。このような場合にIDEを使用すると、生産性が向上し、フラストレーションが軽減される可能性があります。 IDEにはさまざまな種類があり、ニーズに合ったものを選択する必要があります。 Linuxに最適なC/C++IDEのリストは次のとおりです。 C /C++開発用のNetbeans- Netbeansは、C /C++および他の多くのプログラミング言語向けの無料のオープンソースで人気のあるクロスプラットフォームIDEです。コミュニティで開発されたプラグインを使用して完全に拡張可能です。 Eclipse CDT(C / C ++

  2. Window上のc++のトップIDEは何ですか?

    大きなプロジェクトは、単なるテキストエディタでは管理が困難です。このような場合にIDEを使用すると、生産性が向上し、フラストレーションが軽減される可能性があります。 IDEにはさまざまな種類があり、ニーズに合ったものを選択する必要があります。これがWindowに最適なC/C++IDEのリストです。 Visual Studio − Microsoftが開発したIDEです。このIDEは、Windows上でC ++のプログラムを構築、開発、およびプロファイリングするためのクラス最高のツールを備えています。 Visual Studioには、多数のプラグインを備えた巨大なプラグインストアもありま