C ++STLのmatch_resultslength()
この記事では、C++STLでのmatch_results::length()関数の動作、構文、および例について説明します。
C ++ STLのmatch_resultsとは何ですか?
std ::match_resultsは、一致する文字シーケンスのコレクションを保持するために使用される、特殊なコンテナのようなクラスです。このコンテナクラスでは、正規表現の一致操作により、ターゲットシーケンスの一致が検出されます。
match_results ::length()とは何ですか?
match_results ::length()関数は、C ++ STLに組み込まれている関数であり、
構文
smatch_name.length(unsigned int num);
パラメータ
この関数は、コンテナーのサイズよりも小さい必要がある一致番号である1つのパラメーターを受け入れます。一致番号0は、一致式全体を表します。
戻り値
この関数は、オブジェクト内の一致数の符号なし整数値を返します
例
Input: std::smatch; smatch.length(0); Output: 0
例
#include <bits/stdc++.h> using namespace std; int main() { string str = "TutorialsPoint"; regex R("(Tutorials)(.*)"); smatch Mat; regex_match(str, Mat, R); for (int i = 0; i < Mat.size(); i++) { cout<<"Match is : " << Mat[i]<< endl; } return 0; }
出力
上記のコードを実行すると、次の出力が生成されます-
Match is : TutorialsPoint Match is : Tutorials Match is : Point
例
#include <bits/stdc++.h> using namespace std; int main() { string sr = "Tutorials Point"; regex Re("(Tutorials)(.*)"); smatch Mat; regex_match(sr, Mat, Re); int len = 0; string str; for (int i = 1; i < Mat.size(); i++) { if (Mat.length(i) > len) { str = Mat[i]; len = Mat.length(i); } } cout<<"Match length is of: " << len; return 0; }
出力
上記のコードを実行すると、次の出力が生成されます-
Match length is of: 9
-
C ++ STL(3)でのsetとunordered_set
この記事では、C ++ STLで設定されているものとunordered_setを理解し、それらの違いについて理解しましょう。 何が設定されていますか? セット Key型の一意のオブジェクトのソートされたセットを含む連想コンテナです。各要素は1回だけ発生する可能性があるため、重複は許可されません。ユーザーは要素を任意の順序で挿入してセットを作成できます。セットは並べ替えられたデータをユーザーに返します。つまり、セットにはユーザーから抽出されたデータを並べ替えるための定義が含まれています。 セットを使用できる主な理由は − 並べ替えられたデータの場合 必須 重複する値が必要ない場
-
C ++ STL(3.5)でスタック
C ++ STLでは、スタックはLIFO構造として実装されるコンテナーとして使用されます。 LIFOは後入れ先出しを意味します。 Stackは、本が上下に並べられた本の山と見なすことができ、最後に挿入された本が最初に削除されるため、LIFO構造と呼ばれます。 スタックに関連付けられている操作は- Top() -この関数は、スタックの最上位要素への参照を返します。 構文 --name_of_stack.top() パラメータ -パラメータなし 戻り値 -スタックコンテナの最上位要素への参照 Push() -この関数は、要素をスタックコンテナに挿入するために使用されま