[c++] 정규 표현식을 사용한 숫자 추출
다음은 정규 표현식을 사용하여 숫자를 추출하는 예제입니다.
#include <iostream>
#include <string>
#include <regex>
int main() {
std::string input = "문자열에서 123 숫자를 추출합니다.";
std::regex re("\\d+"); // 숫자를 나타내는 정규 표현식
std::smatch match;
if (std::regex_search(input, match, re)) {
std::cout << "추출된 숫자: " << match.str() << std::endl;
} else {
std::cout << "숫자를 찾을 수 없습니다." << std::endl;
}
return 0;
}
이 예제에서는 “문자열에서 123 숫자를 추출합니다.”라는 문자열에서 숫자를 추출하는 방법을 보여줍니다.
std::regex re("\\d+");
에서 정의된 정규 표현식은 문자열 내에서 하나 이상의 숫자(\\d+
)에 일치합니다.
std::regex_search
함수를 사용하여 입력 문자열에서 정규 표현식에 일치하는 부분을 찾고, std::smatch
객체를 사용하여 일치하는 부분을 저장합니다.
매칭된 결과는 match.str()
을 통해 출력됩니다.
이 코드를 실행하면 “추출된 숫자: 123”이 출력됩니다.
참고 자료:
cplusplus.com - std::regex
w3schools.com - C++ 정규 표현식