Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 match_results 연산자=

<시간/>

이 기사에서는 C++ STL에서 match_results 연산자 '='의 작동, 구문 및 예제에 대해 논의할 것입니다.

C++ STL의 match_results란 무엇입니까?

std::match_results는 일치하는 문자 시퀀스 컬렉션을 보유하는 데 사용되는 특수 컨테이너 유사 클래스입니다. 이 컨테이너 클래스에서 정규식 일치 작업은 대상 시퀀스의 일치 항목을 찾습니다.

match_results 연산자 '='란 무엇입니까

Match_results 연산자 =는 match_results에 값을 할당하는 데 사용되는 동등 연산자입니다. 연산자 =는 하나의 match_results 개체에서 다른 개체로 요소를 복사하거나 이동하는 데 사용됩니다.

구문

match_results1 = (match_results2);

매개변수

데이터를 match_results 개체에 복사해야 하는 또 다른 match_results 개체입니다.

반환 값

이것은 아무것도 반환하지 않습니다.

예시

Input: string str = "Tutorials Point";
   regex R("(Tutorials)(.*)");
   smatch Mat_1, Mat_2;
   regex_match(str, Mat_1, R);
   Mat_2 = Mat_1;
Output: MAT 2 =
   Tutorials Point
   Tutorials
   Point

예시

#include <bits/stdc++.h>
using namespace std;
int main() {
   string str = "Tutorials Point";
   regex R("(Tutorials)(.*)");
   smatch Mat_1, Mat_2;
   regex_match(str, Mat_1, R);
   Mat_2 = Mat_1;
   cout<<"String matches: " << endl;
   for (smatch::iterator i = Mat_2.begin(); i!= Mat_2.end(); i++) {
      cout << *i << endl;
   }
}

출력

위의 코드를 실행하면 다음 출력이 생성됩니다 -

String matches:
Tutorials Point
Tutorials
Point

예시

#include <bits/stdc++.h>
using namespace std;
int main() {
   string str = "Tutorials Point";
   regex R_1("(Tutorials)(.*)");
   regex R_2("(Po)(int)(.*)");
   smatch Mat_1, Mat_2;
   regex_match(str, Mat_1, R_1);
   regex_match(str, Mat_2, R_2);
   smatch Mat;
   if (Mat_1.size() > Mat_2.size()) {
      Mat = Mat_1;
   } else {
      Mat = Mat_2;
   }
   cout<<"string matches " << endl;
   for (smatch::iterator i = Mat.begin(); i!= Mat.end(); i++) {
      cout << *i << endl;
   }
}

출력

위의 코드를 실행하면 다음 출력이 생성됩니다 -

String matches:
Tutorials Point
Tutorials
Point