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

C++ STL의 match_results empty()

<시간/>

이 기사에서는 C++ STL에서 match_results::empty() 함수의 작동, 구문 및 예제에 대해 논의할 것입니다.

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

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

match_results::empty()란 무엇입니까?

match_results::empty() 함수는 헤더 파일에 정의된 C++ STL의 내장 함수입니다. empty() 연결된 일치 개체가 비어 있는지 또는 일치 값이 있는지 확인합니다. empty()는 일치 개체가 비어 있거나 일치 항목이 없으면 true를 반환하고 컨테이너에 일부 값이 있으면 함수는 false를 반환합니다.

구문

smatch_name.empty();

매개변수

이 함수는 매개변수를 허용하지 않습니다.

반환 값

이 함수는 일치 개체가 비어 있거나 컨테이너에 일치 항목이 없으면 부울 값 true를 반환하고, 일치 개체에 일부 값이 있거나 사용 가능한 일치 항목이 있으면 false를 반환합니다.

예시

Input: std::smatch;
   smatch.empty();
Output: true

예시

#include<bits/stdc++.h>
using namespace std;
int main() {
   string str("Tutorials");
   regex R_1("Points.*");
   regex R_2("Tutorials.*");
   smatch Mat_1, Mat_2;
   regex_match(str, Mat_1, R_1);
   regex_match(str, Mat_2, R_2);
   if (Mat_1.empty()) {
      cout<<"String doesn't matches with Regex-1" << endl;
   } else {
      cout << "String matches with Regex-1" << endl;
   }
   if (Mat_2.empty()) {
      cout << "String doesn't matches with Regex-2" << endl;
   } else {
      cout << "String matches with Regex-1" << endl;
   }
   return 0;
}

출력

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

String doesn't matches with Regex-1
String matches with Regex-1