이 기사에서는 C++ STL에서 match_results::length() 함수의 작동, 구문 및 예제에 대해 논의할 것입니다.
C++ STL에서 match_results란 무엇입니까?
std::match_results는 일치하는 문자 시퀀스 모음을 보유하는 데 사용되는 특수 컨테이너 유사 클래스입니다. 이 컨테이너 클래스에서 정규식 일치 작업은 대상 시퀀스의 일치 항목을 찾습니다.
match_results::length()란 무엇입니까?
match_results::length() 함수는
구문
smatch_name.length(unsigned int num);
매개변수
이 함수는 컨테이너 크기보다 작아야 하는 일치 번호인 하나의 매개변수를 허용합니다. 일치 번호 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